Wikibase/API/es

Introducción general
La API de Wikibase es proporcionada por un conjunto de extensiones que implementan módulos API de MediaWiki. Así que, para usarlo, deberás estar familiarizado con la API de acciones de MediaWiki: acciones, consultas, etc., y a su vez toda la experiencia que puedas tener con parámetros genéricos tales como  y , etc. también es válida para la API de Wikibase.

Los cambios en la API de Wikibase están sujetos a la política de interfaz estable.

Wikibase y Wikidata
Wikibase proporciona un mecanismo general para almacenar declaraciones como datos estructurados. Cualquier instalación de MediaWiki puede ejecutarlo.

(Véase Wikidata:Glosario para una explicación de estos términos.) En el clúster de Wikimedia, la mayoría de los wikis no ejecutan el conjunto completo de extensiones de Wikibase. Las declaraciones sobre elementos viven en el servidor. Dado que esto incluye declaraciones sobre los millones de elementos en Wikipedias, ¡es un recurso fantástico para consultar!

(Wikimedia Commons tiene su propia Wikibase para las propiedades de los archivos en Commons.)

Las extensiones implementan el  de submódulos and the API modules Para generar la documentación de uno solo de estos módulos, anexa  a Special:ApiHelp; por ejemplo, visita Special:ApiHelp/wbgetentities.
 * pageterms query property submodule
 * wikibase query meta submodule
 * wbcontentlanguages query meta submodule - (docs)
 * wbavailablebadges
 * wbcreateclaim
 * wbcreateredirect
 * wbeditentity
 * wbformatvalue
 * wbgetclaims
 * wbgetentities
 * wblinktitles
 * wbmergeitems
 * wbparsevalue
 * wbremoveclaims
 * wbremovequalifiers
 * wbremovereferences
 * wbsearchentities
 * wbsetaliases
 * wbsetclaim
 * wbsetclaimvalue
 * wbsetdescription
 * wbsetlabel
 * wbsetqualifier
 * wbsetreference
 * wbsetsitelink
 * wbsgetsuggestions

Para generar la documentación de varios módulos en una sola página, pasa los nombres de los módulos, separados por, como el parámetro   en  ; por ejemplo, |query+wikibase|wbavailablebadges|wbcreateclaim|wbcreateredirect|wbeditentity|wbformatvalue|wbgetclaims|wbgetentities|wblinktitles|wbmergeitems|wbparsevalue|wbremoveclaims|wbremovequalifiers|wbremovereferences|wbsearchentities|wbsetaliases|wbsetclaim|wbsetclaimvalue|wbsetdescription|wbsetlabel|wbsetqualifier|wbsetreference|wbsetsitelink|wbsgetsuggestions esta URL genera la documentación de todos los módulos enumerados anteriormente.

Clientes Wikibase
Many Wikimedia wikis run the Wikibase Client extension. This lets API clients on them
 * query the  meta submodule to determine URLs for the full Wikibase repo see its API help
 * query the  property submodule to get some Wikidata information about pages on the local wiki

Post o get

 * Requests that change content should use a token.
 * Requests should use HTTP POST or GET requests according to api module. Modules that change content use POST. Use POST to avoid problem with non-behaving proxies.
 * Clients should be aware of and handle errors from the API.

Parámetros de módulos
Algunos parámetros están casi siempre disponibles. Las formas plurales se utilizan en los casos en que un parámetro puede tomar varios valores. Normally the return value either has a  key with a boolean cast as an integer or an   key with an object of two, optionally three, keys ,   and. The last one is additional information. Information about the action is either passed on the top level or under item if its one single item or items if its several. If it is several items each is found under a key with its own item id. See Success and Errors paragraphs.
 * id | ids : Identifica una entidad o unas entidades específicas, generalmente un elemento. La forma plural se utiliza en wbgetentities. Las listas de identificadores deberían usar  como separador.
 * site ∩ title | sites ∩ titles : Identifica uno o varios elementos. La forma plural se usa en wbgetentities. Solo se permite que o bien sites o bien titles tenga valores múltiples, pero no ambos.
 * language | languages : El idioma se usa como mecanismo de filtro para filtrar etiquetas y descripciones en acciones de lectura o para identificar un idioma específico en acciones de escritura.
 * format : Debe estar siempre en json (o jsonfm para depuración) o xml (o xmlfm para depuración). No se admiten otros formatos.
 * summary : Añade un resumen personalizado en lugar del generado por el sistema. Si no se indica, el módulo generará su propio resumen, y si esto falla el propio elemento proporcionará un resumen.
 * token : Una cadena cifrada que el solicitante debe enviar en caso de que se cumplimente la petición.
 * baserevid : Un identificador para la última revisión conocida que se debe enviar para que el servidor pueda detectar conflictos de edición.


 * Note that empty objects are returned as json arrays and not as objects.
 * Note that empty parameters removes the actual entry from the item.

wbgetentities
Please see the live docs and try the examples in the API Sandbox.

wbeditentity
live docs


 * id is the numeric identifier for an existing item, if the item does not exist an error is returned.
 * site ∩ title is a pair that identifies a single existing item, if the item does not exist an error is returned.
 * data
 * clear is a marker to clear out the complete item and start from scratch.
 * new


 * Examples


 * Request
 * Result


 * Request
 * Result


 * Request
 * Result


 * Request
 * Result


 * Request
 * Result


 * Request

or


 * Result


 * Request
 * Result


 * Request
 * Result


 * Request
 * Result


 * Request
 * Result


 * Request

or


 * Result

wbsetlabel
Module to set a label for a single Wikibase entity. See live docs.


 * id is the numeric identifier for an existing item, if the item does not exist an error is returned.
 * site ∩ title is a pair that identifies a single existing item, if the item does not exist an error is returned.
 * language is the language for the label. The language must be a valid identifier.
 * value is the value of the label

Set the label of the item "Q42" to the English language string "Wikimedia":

Set the label of the item with sitelink "enwiki → Earth" to the English language string "Planet Earth"

wbsetdescription
Module to set a description for a single Wikibase entity. See live docs.


 * id is the numeric identifier for an existing item, if the item does not exist an error is returned.
 * site ∩ title is a pair that identifies a single existing item, if the item does not exist an error is returned.
 * language is the language for the description. The language must be a valid identifier.
 * value is the value of the description.


 * Set the string "An encyclopedia that everyone can edit" for page with id "Q42" as a description in English language:
 * Set the string "An encyclopedia that everyone can edit" as a description in English language for page with a sitelink to enwiki:Wikipedia:

wbsetaliases
Module to set, add and remove aliases from items. Aliases are alternate names for the items, that can be queried and used for lookup. See live docs. setAliases( ( id XOR ( site, title ) ) OR baserevid, ( add OR remove ) XOR set, *summary )
 * id is the numeric identifier for an existing item, if the item does not exist an error is returned.
 * site ∩ title is a pair that identifies a single existing item, if the item does not exist an error is returned.
 * set contains a list of strings that will be used as the new list of aliases. The values are normalized before they are used.
 * add contains a list of additional strings that will be used as aliases. The values are normalized before they are used.
 * remove contains a list of strings that will be removed from the the list of aliases. The values are normalized before they are used.
 * language


 * Examples


 * Request
 * Result


 * Request
 * Result


 * Request
 * Result

wbsetsitelink
Module to define new links to pages at external client sites. During processing of requests the module will query the external site to verify the existence of the page and to acquire the canonical form of the prefix and the pagename. linkSite( ( id XOR ( site, title ) ) OR baserevid, linksite, linktitle, *summary )
 * id is the numeric identifier for an existing item, if the item does not exist an error is returned.
 * site ∩ title is a pair that identifies a single existing item, if the item does not exist an error is returned.
 * linksite is the site id for a client site that will be the target of the new link. The site will be queried during the call.
 * linktitle is the title of the page at the client site that will be the target of the new link. The site will be queried during the call.
 * badges is the list of badges linked to the given sitelink.


 * Examples


 * Request
 * Result


 * Request
 * Result

wbgetclaims
Please see the live docs and try the examples in the API Sandbox.

wbcreateclaim

 * entity is the id of the entity you are adding the claim to.
 * snaktype (value, novalue, somevalue)
 * property is the id of the snaks property.
 * value of snak when creating a claim with a snak that has a value.
 * Examples


 * Request
 * Result


 * Request
 * Result


 * Request
 * Result


 * Note: value parameters "globe" and "precision" are optional. Default for "globe" is "http://www.wikidata.org/entity/Q2" (earth).


 * Request
 * Result


 * Request
 * Result

wbsetclaim
Module for creating or updating an entire Claim.


 * claim a claim in json form
 * index


 * Example


 * Request
 * Result

wbsetclaimvalue
Module for setting the value of a Wikibase claim.


 * claim a GUID identifying the claim. Required.
 * snaktype (value, novalue, somevalue).
 * value of snak when setting a claim with a snak that has a value in JSON format.


 * Example


 * Request
 * Result

wbremoveclaims
Module for removing Wikibase claims.


 * claim a GUID identifying the claim.


 * Example


 * Request
 * Result

wbsetqualifier
Module for creating a qualifier or setting the value of an existing one.


 * claim a GUID identifying the claim. Required.
 * property Id of the snaks property
 * value
 * snaktype
 * snakhash


 * Examples

In this example, p4 is a string property
 * Request
 * Result


 * Request
 * Result


 * Request
 * Result

wbremovequalifiers
Module for removing a qualifier from a claim.


 * claim a GUID identifying the claim. Required.
 * qualifiers a hash of the qualifier that should be removed.


 * Examples


 * Request
 * Result

wbsetreference
Module for creating a reference or setting the value of an existing one.


 * statement a GUID identifying the statement. Required.
 * snaks
 * snaks-order
 * reference a hash of the reference that should be updated.
 * index


 * Examples


 * Request
 * Result


 * Request
 * Result

wbremovereferences
Module for removing one or more references of the same statement.


 * statement a GUID identifying the statement. Required.
 * references a hash of the reference that should be updated.


 * Example


 * Request
 * Result

wbsearchentities
Módulo para buscar entidades.


 * search es la cadena de texto que se busca
 * language es el idioma en el que se hace la búsqueda
 * type es el tipo de entidades que devolver
 * limit es el número máximo de resultados que devolver (por defecto son 7)
 * continue desplazamiento, para proseguir una consulta previa


 * Ejemplos


 * Solicitud
 * Resultado


 * Solicitud
 * Resultado


 * Solicitud
 * Resultado

wblinktitles
Módulo para asociar dos artículos de dos wikis diferentes con un elemento Wikibase.


 * tosite ∩ totitle es el par que identifica el primer enlace de sitio
 * fromsite ∩ fromtitle es el par que identifica el segundo enlace de sitio


 * Ejemplos


 * Solicitud
 * Resultado

wbmergeitems
Module to merge two Wikibase items.
 * fromid is the numeric identifier for the item to merge from
 * toid is the numeric identifier for the item to merge to
 * ignoreconflicts Array of elements of the item to ignore conflicts for, can only contain values of "label" and or "description" and or "sitelink"


 * Ejemplos


 * Solicitud
 * Resultado

wbparsevalue
Módulo para analizar gramaticalmente los strings usando un backend ValueParser.


 * parser
 * values
 * options


 * Ejemplos


 * Solicitud
 * Resultado

wbformatvalue
Módulo para formatear DataValues.
 * generate: The desired output format to generate. One of the following values:,  ,  . Default:.
 * datavalue: The data to format. This has to be the JSON serialization of a DataValue object. This parameter is required.
 * datatype: The value's data type. This is distinct from the value's type. One of the following values:,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,.
 * property: This can (and should) be used instead of datatype to indicate the property ID for this value. For instance, in the case of an external-id with a formatter URL, the value will be formatted with the appropriate link.
 * options: This takes a JSON object containing various options to customize the rendering. The lang field can always be supplied, with a Wikimedia language code (for instance to determine how month names will be rendered for dates). The list of options supported by each datatype is not centralized yet but can be guessed from here: https://github.com/search?utf8=%E2%9C%93&q=%22OPT%22+user%3Awmde+user%3ADataValues+extension%3Aphp&type=Code


 * Ejemplos


 * Solicitud
 * Resultado

wbentityusage
Module as a prop in  to add entity usage data to the result.
 * Ejemplos


 * Solicitud
 * Resultado

wbcheckconstraints
Módulo para comprobar restricciones para reclamaciones o entidades dadas.


 * id Identificador(es) de entidad correspondientes a las entidades (elementos, propiedades, …) que deseas verificar. Se verificarán todas las declaraciones de las entidades. Se puede combinar con claimid para verificar algunas declaraciones individuales de otras entidades.
 * claimid Identificador(es) de declaración correspondientes a las declaraciones individuales que deseas verificar. Se puede combinar con id, pero las declaraciones enumeradas aquí no tienen por qué pertenecer a los identificadores enumerados allá.
 * constraintid Si están especificadas, se verificarán solo esas restricciones (en caso contrario, se verificarán todas). El identificador de una restricción es el identificador de declaración de la declaración correspondiente de la propiedad en la que se define esa restricción.
 * status Devolver solo resultados de verificación con estos estados. Solo las peticiones que limitan los estados a  se benefician del almacenamiento en caché. (Este también es el valor predeterminado.)

The output format of the wbcheckconstraints action is based on the Wikibase JSON format, but in every place where the Wikibase JSON format can contain a snak, the wbcheckconstraints response instead contains an object with members  and. is the hash of the corresponding snak, and  is a list of the individual constraint reports for that snak.

Incluidos en la estructura de la salida hay resultados individuales del informe de restricciones, que son objetos con los siguientes componentes:
 * : El estado principal del resultado. Los estados principales son,   y   (violación de restricción no obligatoria). Otros estados son   (la entidad es una excepción para la restricción),   (restricción no implementada o desconocida),   (los parámetros de la definición de la restricción están rotos) y   (la comprobación de la restricción se ignoró por declaración obsoleta). A medida que la API sigue evolucionando, se podrán añadir estados nuevos sin aviso.
 * : La propiedad ID de la propiedad del snak siendo comprobada, la cual también es la propiedad en la que se define la restricción.
 * : Un objeto con los miembros siguientes:
 * : El identificador de la restricción, que es el identificador de declaración correspondiente a la declaración de restricción que define la restricción.
 * : El tipo de restricción, que es un identificador de elemento.
 * : La etiqueta del elemento con el identificador dado en, en el idioma del usuario.
 * : Un enlace a una página de ayuda para el tipo de restricción.


 * : Un mensaje inteligible para humanos que explica el resultado (principalmente en caso de una vulneración), en formato HTML.
 * : La declaración ID ser comprobó, si el resultado pertenece al principal snak de una declaración. Este miembro es ausente encima resultados de control para clasificados, referencias, y cualquiera otro snaks aquello no es principal snaks de salvó declaraciones.
 * : If this optional member is present and contains a truthy value, the result was cached. The value may be an object with a  member, which indicates how outdated the value might be, in seconds.
 * Ejemplos


 * Solicitudes
 * Resultado

Time

 * Calendar model
 * Q1985727 - Gregorian calendar
 * Q1985786 - Julian calendar

Token
An Edit token is required to make edits. This token can be obtained through query&meta=tokens, or by the deprecated. See also.

Revisión
The API uses revision ids for edit collision detection. If the revision id is known from an previous reply, page load or similar, then pass on the revision to the edit. Without the revision id it is not possible to detect edit collisions in a reliable way. If there is an edit collision the requester must acquire a newer revision id to be able to continue. This typically involves requesting wbgetentities for the item in question, and then storing (and using) the revision from the entry.

Errores
Possible errors for all modules can be found at, for example wbeditentity

"Expected" errors will will have a standardized form: The servedby is given unconditionally for error messages, but could be missing for some less than fatal errors. In some cases error messages can be appended to a success and be called warning(s).
 * ejemplo :

All error messages from the Wikibase modules should be internationalized (i18n) and localized (l10n), but note that error messages from the base API system may not be localized. The user language for the logged in user (usually the same as in the web interface) will be the default for error messages. You can override this by supplying  in the URL query string

Do not test the info value for a particular error, instead use the code value as this will remain independent of localization.

An internationalized error message that isn't localized as it should will have additional angle brackets. With correctly localized error message the angle brackets will go away and the info string will print out in clear text. Assuming the user is logged in and use English language it will print as something like the following. Switching to Norwegian in the Special:Preferences or by appending  it will change the text of the info string to a localized variant, while the code string remains constant. A lot of error messages are not properly localized.
 * ejemplo :

Éxito
Can be removed since all normal calls will return data of some kind, unless there is an error condition.

If a success is achieved it will have the following form when the

The interpretation of the value for success can be dependent on the actual parameters in the call, but usually it is a boolean that is type casted to an integer. Its meaning is that every previous tests evaluated to true. Si el número es 0 (cero) cualquier otro valor adicional puede ser incorrecto.

There might be additional values in the structure after a successful call.

Véase también

 * API:Main page
 * Manual:Maxlag parameter
 * API:Cross-site requests