API:Preguntas frecuentes

This page is a translated version of the page API:FAQ and the translation is 32% complete.


This page provides answers to some frequently asked questions about the MediaWiki Action API. This page is intended for technical contributors and software developers who wish to understand and use the MediaWiki Action API.

Lea también el API:Portada . Responde algunas preguntas no respondidas aquí y dirige a otras páginas útiles.

Sobre APIs

What is an API?

An API is an acronym for Application Programming Interface. It allows different applications to communicate with each other. Sometimes an API allows an application to request an action to be done by the application which implements the API. In mediawiki general terms, it refers to web-based APIs, which use HTTP requests-response mechanism and produce JSON/XML structured data.

¿Qué es un REST API?

REST is an acronym for REpresentational State Transfer. A set of guiding principles or constraints define a RESTful system. A RESTful API — or just a REST API — adheres to these principles and hence is a faster, more reliable and scalable service.

Qué puede hacer una API?

¿Dónde puedo aprender más sobre las APIs?

Here are a few resources:


What is the MediaWiki Action API?

The MediaWiki Action API is a RESTful web service that allows users to perform certain wiki-actions like page creation, authentication, parsing, searching, etc.

¿Para qué se puede utilizar la página de la comunidad?

The MediaWiki Action API can be used to:

  • access wiki features.
  • interact with a wiki.
  • obtain meta-information about wikis and public users.

The right sidebar points to many features supported by the API. Also, see some Wikimedia projects that use the MediaWiki Action API.

¿Cómo puedo usar la MediaWiki Action API?

HTTP requests are usually used to call the Action API. For detailed instructions, read the tutorial.

Para trabajar con la Action API:

  • Use el Special:ApiSandbox
  • Enable your browser's developer console and watch net requests to api.php as you interact with the wiki.

¿Qué es un módulo, un submódulo, y un parámetro?

The MediaWiki Action API has numerous modules that we use to perform different tasks. In technical terms, a module is a subclass of ApiBase. A module requires parameters. These parameters may (or may not) be submodules.

Consider the following request:


  • action is a parameter of the main module.
  • action=query is another module. It is called the query module.
  • list is a parameter of the query module.
  • list=search is also a module. It can be called a submodule of action=query.
  • srsearch is a parameter of the search module. It holds the search string 'abc'.
  • format is a parameter of the main module.
  • json is the output format.

Also, see Introduction and guidelines. It describes the submodules of the action=query module.

¿Cómo puedo saber a qué módulo y submódulo llamar?

La API de MediaWiki es grande y las extensiones la amplían aún más. Aquí hay algunas formas de resolver su solicitud de API:

  • In the sidebar, look for the feature you wish to implement and follow the link for information about which modules to call.
  • The self-documenting API pages contain a list of all modules and submodules with brief descriptions. You can start at the main module and follow the links to different submodules. (Append recursivesubmodules=1 to view the expanded version)

¿Dónde puedo encontrar códigos de muestra para utilizar los módulos API?

The API documentation pages contain an 'Examples' section to demonstrate how different modules and submodules can be used. The auto-generated docs also have examples trailing the module descriptions.

See Mediawiki-API-demos for code snippets in Python and JavaScript.

¿Cómo puedo controlar el formato de salida?

The default output format is JSON. Other output formats have been deprecated or removed in the latest stable MediaWiki version, and their use is discouraged.

In older versions, to control the output format, you can pass &format=someformat in the query string.

For information, see API:Data formats.

¿Necesito un token de acceso?

You will require an access token to perform data modifying actions like logging in, editing, moving pages, etc.

To learn more, refer to API:Tokens or the sidebar category 'Authentication'.

¿Cómo puedo hacer peticiones cruzadas utilizando la API?

You must use JSONP or CORS to make cross-site requests in MediaWiki.

For details, see API:Cross-site requests.

¿Existe un límite para los resultados de las consultas?

Yes, it depends on the query parameter. For example, the results for list and property queries cannot exceed 500 for regular users. The API pages contain information about these limits in the 'Additional notes' section or the 'Limits' section. Note that some modules impose stricter limits under certain conditions.

If you are unsure about what limit to set and just want as many results as possible, set the limit to max.

¿Hay un límite para las llamadas a la API?

There is no concrete limit. Yet, we recommend making a reasonable number of calls to prevent getting blocked. If you want to make many requests, contact the administrators beforehand.

Also, see API:Etiquette.

¿Dónde puedo obtener actualizaciones sobre MediaWiki Action API?

You can subscribe to the MediaWiki-API-Announce mailing list for announcements and updates.

¿Qué son los wiki dumps y cómo puedo trabajar con ellos?

Wikimedia’s data dumps are dumps of wiki collections, content, metadata, search indices, etc. To work with dumps, see using dumps and public dumps.

¿Dónde puedo obtener más ayuda?

If you can't find answers in the MediaWiki API documentation or the auto-generated documentation pages, feel free to reach out in the following ways.

Desarrolladores de extensiones y propietarios de wiki

How can I create an API module in an extension?

API:Extensions will walk you through the complete process of creating an API module in an extension.

¿Cuál es la estructura interna de la API?

API:Implementation Strategy explains the implementation of the API machinery in MediaWiki Core.

¿Cómo puedo restringir el uso de la API?

To restrict the API usage, you can either restrict the use of write API or disable individual modules.

For instructions and examples, see API:Restricting API usage.

¿Cómo puedo permitir/restringir que los usuarios modifiquen el contenido de la wiki utilizando la API?

Users are allowed to modify the wiki content by default. To restrict, you have to set $wgEnableWriteAPI = false; in LocalSettings.php .

For more information, see API:Changing wiki content.

Errores y solución de problemas

How do I detect an error?

If you encounter an error, the error response from the API will set the MediaWiki-API-Error HTTP header and return an error structure.

¿Qué significa este error?

Find your error in the list of standard error messages to understand what the error means.

¿Cómo presento una solicitud de error/característica?

You can report bugs and file feature requests on Wikimedia's task tracking tool, Phabricator.


See How to report a bug for more details.

¿Estoy experimentando errores debido a mi versión de la API?

If a website runs a different version of MediaWiki, it would also run a different version of the API. Some module parameters supported in one version might be deprecated (or removed) in others. Such parameters will throw an exception if used. The API pages document any such deprecations.

See the release notes for information regarding different API versions.