API:FAQ/de

Überblick
Diese Seite bietet Antworten zu häufig gestellten Fragen über die MediaWiki Action API.

Lies auch die. Sie beantwortet ein paar Fragen, die hier nicht beantwortet werden und verweist auf andere nützliche Seiten.

Was ist eine API?
API ist eine Abkürzung für Application Programming Interface. Sie erlaubt verschiedenen Anwendungen, miteinander zu kommunizieren. Allgemein bezieht sich dies auf webbasierte APIs, die HTTP-Anfrage-Antwort-Mechanismen nutzen und strukturierte JSON/XML-Daten produzieren.

Was ist eine REST API?
REST ist eine Abkürzung für REpresentational State Transfer. Eine Reihe von Leitprinzipien oder Einschränkungen definiert ein REST-System. Eine RESTful API &mdash; oder nur REST API &mdash; unterliegt diesen Prinzipien und ist daher schneller, verlässlicher und besitzt einen skalierbaren Service.

Was kann eine API tun?
Siehe einige Nutzungsmöglichkeiten der API.

Wo kann ich mehr über APIs erfahren?
Hier sind ein paar Ressourcen:


 * APIs verstehen
 * Eine Einführung in APIs
 * Was ist REST — Eine Einfache Erklärung für Anfänger, Teil 1: Einleitung

Was ist die MediaWiki Action API?
Die MediaWiki Action API ist ein REST-Webservice, der es Benutzern ermöglicht, Wiki-Aktivitäten wie Seitenerstellung, Authentifizierung, Parsing, Suchen, etc. auszuführen.

Wozu kann die MediaWiki Action API verwendet werden?
Die MediaWiki Action API kann genutzt werden für:


 * Zugriff auf Wiki-Funktionen.
 * Interaktion mit einem Wiki.
 * Erhalt von Meta-Information über Wikis und öffentliche Benutzer.

Die rechte Seitenleiste zeigt viele Funktionen, die von der API unterstützt werden. Siehe auch einige Wikimedia-Projekte, die die MediaWiki Action API nutzen.

Wie kann ich die MediaWiki Action API verwenden?
Anfragen an die Action API erfolgen normalerweise über HTTP-Anfragen. Lies die Anleitung für detaillierte Anweisungen.

API ausprobieren


 * verwende die Special:ApiSandbox
 * Aktiviere die Entwicklerkonsole deines Browsers und beobachte die Internetanfragen an, während du mit dem Wiki interagierst.

Was sind ein Modul, ein Submodul und ein Parameter?
Die MediaWiki Action API hat mehrere Module, die genutzt werden, um verschiedene Aufgaben auszuführen. Technisch betrachtet ist ein Modul eine Unterklasse der ApiBase. Ein Modul erfordert keine Parameter. Diese Parameter können Submodule sein (oder auch nicht).

Betrachte die folgende Abfrage: hier:


 * ist ein Parameter des Hauptmoduls.
 * ist ein anderes Modul. Es wird Abfragemodul genannt.
 * ist ein Parameter des Abfragemoduls.
 * ist auch ein Modul. Es kann als Submodul von  bezeichnet werden.
 * ist ein Parameter des Suchmoduls. Er enthält die Such-Zeichenkette 'abc'.
 * ist ein Parameter des Hauptmoduls.
 * ist das Ausgabeformat.

Siehe auch Einführung und Richtlinien. Sie beschreiben die Submodule des -Moduls.

Woher weiß ich, welches Modul und Submodul ich anrufen soll?
Die MediaWiki Action API ist groß und Erweiterungen vergrößern sie noch weiter. Hier sind einige Möglichkeiten, um deine API-Abfrage zu erarbeiten:


 * Suche in der Seitenleiste nach der Funktion, die du implementieren möchtest und folge dem Link für Informationen dazu, welche Module du anrufen musst.
 * Die selbstdokumentierenden API-Seiten enthalten eine Liste aller Module und Submodule mit kurzen Beschreibungen. Du kannst mit dem Hauptmodul beginnen und dann den Links auf unterschiedliche Submodule folgen. (Ergänze, um dir die erweiterte Version anzusehen)

Wo kann ich einfache Beispielcodes zur Nutzung der API-Module finden?
Die API-Dokumentationsseiten enthalten einen 'Beispiel'-Abschnitt, um zu zeigen, wie unterschiedlich Module und Submodule genutzt werden können. Die automatisch generierten Dokumente enthalten ebenfalls Beispiele, die den Modulbeschreibungen folgen.

Siehe die Mediawiki-API-Demos für Code-Ausschnitte in Python und JavaScript.

Wie kann ich das Ausgabeformat kontrollieren?
Das Standard-Ausgabeformat ist JSON. Andere Ausgabeformate wurden in der aktuellsten MediaWiki-Version missbilligt oder entfernt und von ihrer Nutzung wird abgeraten.

In älteren Versionen kannst du  in die Abfrage-Zeichenkette einsetzen, um das Ausgabeformat festzulegen.

Für Informationen siehe API:Datenformate.

Brauche ich ein Zugangs-Token?
Du wirst ein Zugangs-Token benötigen, um Aktionen zur Veränderung von Daten auszuführen, wie Anmelden, Bearbeiten, Seiten verschieben, etc.

Siehe API:Tokens oder die Seitenleisten-Kategorie 'Authentifizierung', um mehr darüber zu lernen.

Wie stelle ich über die API seitenübergreifende Abfragen?
Du musst JSONP oder CORS nutzen, um seitenübergreifende Abfragen in MediaWiki zu stellen.

Für Details siehe API:Seitenübergreifende Abfragen.

Gibt es eine Begrenzung für Abfrageergebnisse?
Ja, es hängt von den Abfrage-Parametern ab. Beispielsweise können die Ergebnisse für die Abfragen  und   für normale Benutzer 500 nicht übersteigen. Die API-Seiten enthalten Informationen über diese Limits in dem Abschnitt 'Weitere Hinweise' oder in dem Abschnitt 'Limits'. Beachte, dass einige Module unter bestimmten Bedingungen strengere Limits setzen.

Wenn du unsicher bist, welches Limit du setzen sollst und einfach so viele Ergebnisse wie möglich erhalten möchtest, setze das Limit auf.

Gibt es ein Limit für API-Abfragen?
Es gibt kein bestimmtes Limit. Wir empfehlen derzeit eine angemessene Anzahl von Anfragen, um zu verhindern, gesperrt zu werden. Wenn du viele Anfragen stellen möchtest, kontaktiere vorab die Administratoren.

Siehe auch die API:Etikette.

Wo kann ich Neuigkeiten über die MediaWiki Action API erfahren?
Du kannst die MediaWiki-API-Announce-Mailingliste abonnieren, um Ankündigungen und Neuigkeiten zu erfahren.

Was sind Wiki-Dumbs und wie kann ich mit ihnen arbeiten?
Die Wikimedia-Datendumps sind Dumps von Wiki-Sammlungen, Inhalt, Metadaten, Suchindizes, etc. Um mit Dumps zu arbeiten, siehe Dump-Nutzung und öffentliche Dumps.

Wo kann ich mehr Hilfe erhalten?
Wenn du keine Antworten in der MediaWiki-API-Dokumentation oder den automatisch generierten Dokumentationsseiten findest, kannst du einen der folgenden Wege nutzen.


 * Erstelle einen Wikimedia-Account (wenn Du noch keinen besitzt) und füge ein neues Thema zur API-Diskussionsseite hinzu.
 * Stelle deine Frage auf:
 * IRC im -Kanal im Freenode-Netzwerk.
 * MediaWiki-API-Mailingliste.

Wie kann ich ein API-Modul in einer Erweiterung erstellen?
API:Erweiterungen wird dich durch den gesamten Prozess der Erstellung eines API-Moduls in einer Erweiterung begleiten.

Wie ist die interne Struktur der API?
API:Implementationsstrategie erklärt die Implementation der API-Maschine in den MediaWiki Core.

Wie kann ich die Nutzung der API einschränken?
Um die Nutzung der API einzuschränken, kannst du entweder die Nutzung der Schreib-API einschränken oder individuell Module deaktivieren.

Für Anweisungen und Beispiele siehe API:API-Nutzung einschränken.

Wie kann ich Benutzern erlauben/verbieten, über die API den Inhalt des Wikis zu verändern?
In MediaWiki 1.14 dürfen Benutzer standardmäßig den Wiki-Inhalt verändern. Du musst  in  setzten, um dies einzuschränken.

In MediaWiki 1.13 oder früher musst du die Schreib-API mit  aktivieren, um die Veränderung von Inhalt zu erlauben.

For more information, see API:Changing wiki content.

Wie finde ich einen Fehler?
If you encounter an error, the error response from the API will set the  HTTP header and return an error structure.

Was bedeutet dieser Fehler?
Find your error in the list of standard error messages to understand what the error means.

Wie erstelle ich eine Fehler-/ Funktionsanfrage?
You can report bugs and file feature requests on Wikimedia's task tracking tool, Phabricator.

Note: Understand the task creation terms on Phabricator before proceeding.
 * Add the MediaWiki-API project tag to your task.
 * If your report/request is offered by an extension, add that extension's project. (e.g. MediaWiki-extensions-AbuseFilter,  MediaWiki-extensions-FlaggedRevs, etc.)
 * Verify for duplicates before creating a new task.

See How to report a bug for more details.

Erhalte ich Fehler aufgrund meiner API-Version?
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.