This page is a translated version of the page API:REST API and the translation is 89% complete.

La REST API de MediaWiki te permite interactuar con MediaWiki enviando solicitudes HTTP a URLs rest.php. Puedes usar API para construir aplicaciones y secuencias de comandos (scripts) que buscan y muestran páginas wiki, obtienen archivos multimedia y exploran el historial de una página.

Guía rápida

# Busca un artículo sobre la Tierra en Wikipedia en inglés. $ curl "https://en.wikipedia.org/w/rest.php/v1/search/page?q=earth&limit=1"

Pruébalo

Formato de datos

Los puntos finales de la REST API devuelven datos en formato JSON o HTML. Véase la referencia API para el tipo de contenido admitido por cada punto final.

Métodos

La API soporta métodos de petición HTTP estándares.

GET Obtener recurso
HEAD Devolver cabeceras HTTP para una solicitud GET sin datos de respuesta.
POST Crear recurso
PUT Actualizar o crear un recurso

Estructura URL

Los puntos finales de API comparten una estructura URL consistente que incluye la URL base del wiki, la ruta del script y la versión de API.

# Estructura URL
[URL del proyecto]/[Ruta de script]/rest.php/v[Número de versión]/

# URL de ejemplo: Consigue la historia de la Página principal ("Main Page") de la Wikipedia en inglés
https://en.wikipedia.org/w/rest.php/v1/page/Main_Page/history

Versionado

Diseñado para proveer estabilidad a largo plazo para desarrolladores, la REST API de MediaWiki está versionada usando un número de versión global en la ruta de API (por ejemplo: /v1/). Siguiendo los principios del versionado semántico, la versión es incrementada cuando un endpoint es modificado de manera incompatible con versiones anteriores, como por ejemplo la eliminación de una propiedad de respuesta o adición de un parámetro requerido. Dentro de una versión mayor, la API puede cambiar de maneras compatibles con versiones anteriores, como por ejemplo la adición de una propiedad de respuesta o un parámetro opcional.

/v1/ (última) Disponible desde MediaWiki 1.35

Permisos y autorización

La REST API está diseñada para ser utilizada con la extensión OAuth para autenticación y autorización de usuarios. De todas formas, independientemente del método de autenticación, la API responde a la presencia de un usuario con sesión iniciada y devuelve contenido apropiado a los permisos del usuario.

Acceder proyectos Wikimedia usando la REST API

Puedes usar la REST API para acceder Wikipedia, Wiktionary, y otros proyectos Wikimedia en múltiples idiomas. Para una lista completa de URLs de proyectos Wikimedia, véase La matriz de sitios de Meta-Wiki

Límite de solicitudes

No hay un límite fijo de solicitudes a la API, pero tu cliente puede ser bloqueado si pones la estabilidad del sitio en peligro. Para mantenerte dentro de una tasa de solicitudes segura, espera a que cada solicitud termine antes de enviar una nueva.

Identificación del cliente

Los sitios de Wikimedia requieren una para todas las solicitudes a la API. Esto ayuda a identificar tu aplicación y garantiza que los administradores del sistema puedan contactarte si surge un problema. Los clientes que hagan solicitudes sin una cabecera User-Agent podrán ser bloqueados por IP sin previo aviso.

La cabecera User-Agent puede incluir una página de usuario en la wiki local, una página de usuario en una wiki relacionada usando sintaxis de enlaces interwiki, una URL a un sitio web relevante, o un correo electrónico.

# Formato preferido para cabeceras User-Agent
<nombre del cliente>/<versión> (<información de contacto>) <nombre de librería>/<versión>

Si estás llamando a la API desde JavaScript basado en el navegador, es posible que no puedas influir en el encabezado de $1, dependiendo del navegador. Para evitar esto, usa la cabecera Api-User-Agent. Véase la política User-Agent de Meta-Wiki para más información.

Autorización

Para autorizar a tu aplicación a actuar a nombre de un usuario, sigue la guía del desarrollador de OAuth para registrar tu aplicación y hacer solicitudes usando tokens OAuth.

Licenciado y marcas comerciales

El contenido en Wikimedia es libre para reusarse dentro de los términos especificados por la licensia aplicable. Las licencias pueden diferir entre proyectos, así que revisa el proyecto individual para información sobre licencias y reuso de contenido. For example, English Wikipedia’s text can be used under the terms of the Creative Commons Attribution Share-Alike license, while media files on Wikimedia Commons are licensed individually as indicated on the file’s information page. For more information about licensing and trademark use, see Meta-Wiki’s developer app guidelines.

Limitations on Wikidata

While the REST API is available on Wikimedia projects, it is not fully supported by Wikidata. As of writing, some of the endpoints may return unexpected errors.

Endpoints de extensiones

Las extensiones de MediaWiki pueden presentar endpoints específicos a sí mismas a través de la interfaz de la REST API. Véase la documentación de extensiones de REST API para empezar. Para documentación de endpoints de la REST API provistos por extensiones, véase la documentación de extensiones. La interfaz de extensiones de la REST API está disponible en MediaWiki 1.34 mediante $wgEnableRestAPI y desde MediaWiki 1.35 en adelante por defecto.

Comparación de APIs

This table: ver · discusión · editar
API Availability URL base Example
  MediaWiki Action API Included with MediaWiki

Enabled on Wikimedia projects

/api.php https://en.wikipedia.org/w/api.php?action=query&prop=info&titles=Earth
  MediaWiki REST API Included with MediaWiki 1.35+

Enabled on Wikimedia projects

/rest.php https://en.wikipedia.org/w/rest.php/v1/page/Earth
  Wikimedia REST API Not included with MediaWiki

Available for Wikimedia projects only

/api/rest https://en.wikipedia.org/api/rest_v1/page/title/Earth
  For commercial-scale APIs for Wikimedia projects, see Wikimedia Empresa

Acerca de esta documentación

Esta documentación está escrita manualmente basada en el código fuente de MediaWiki Core. ¡Las correcciones y adiciones serán bienvenidas! Para compartir un tutorial o aplicación que use la REST API de MediaWiki, añade un link a la plantilla de REST API.

Véase también