API
Die API ist eine offizielle Programmierschnittstelle, um Informationen zu Spielinhalten und deren aktuellen Status zur Abfrage in externen Anwendungen zur Verfügung zu stellen. Die Verwendung der API steht unter zusätzlichen Bedingungen, die im englischen Wiki zusammen mit der vollständigen Dokumentation in englischer Sprache eingesehen werden können. Eine Übersetzung der Dokumentation findet sich im Folgenden.
Die API wird über HTTPS unter der URL <code>https://api.guildwars2.com/</code> zur Verfügung gestellt. Sie ist eine REST-Schnittstelle, die auf Anfragen per HTTP-GET antwortet. Alle Antworten sind in JSON formatiert.
Version 2[Bearbeiten]
Die Version 2 der API bietet folgende Endpunkte:
Welt- und Karteninformation[Bearbeiten]
Die folgenden Endpunkte liefern Informationen, welche in Verbindung mit dynamischen Events, Welt gegen Welt oder dem Kachel-Service genutzt werden können:
- /v2/continents - Übersicht über die verfügbaren Kontinente und deren Ebenen
- /v2/maps - Detailinformationen über verfügbare Karten
- /v2/floors - API noch nicht aktiv, fällt vermutlich unter /v2/continents
Dynamische Events[Bearbeiten]
- /v2/events - API noch nicht aktiv
- /v2/events-state - API noch nicht aktiv
Gegenstände[Bearbeiten]
- /v2/items - eine Liste mit IDs der bisher entdeckten Gegenstände und Details dazu
- /v2/materials - eine Liste mit IDs der bisher entdeckten Materialien und Details dazu
- /v2/minis - eine Liste mit IDs der bisher entdeckten Miniaturen und Details dazu
- /v2/recipes - eine Liste mit IDs der bisher entdeckten Rezepte und Details dazu
- /v2/recipes/search - Generiert automatisch alle Rezept-IDs in denen ein Gegenstand vorkommt (Output oder Input)
- /v2/skins - eine Liste mit IDs der bisher entdeckten Skins und Details dazu
Welt gegen Welt[Bearbeiten]
- /v2/wvw/abilities - detaillierte Informationen über Welt-Fähigkeiten
- /v2/wvw/matches - detaillierte Informationen zu einer Begegnung
- /v2/wvw/objectives - eine Liste mit Namen der Befestigungen
- /v2/worlds - Namen der Welten
Handelsposten[Bearbeiten]
- /v2/commerce/exchange - die verfügbaren Währungen zur Verwendung mit den folgenden Endpunkten
- /v2/commerce/exchange/coins - der aktuelle Umrechnungskurs von Münzen in Edelsteine
- /v2/commerce/exchange/gems - der aktuelle Umrechnungskurs von Edelsteinen in Münzen
- /v2/commerce/listings - bietet Handelsposten-Auflistungen
- /v2/commerce/prices - bietet aktuelle Einkaufs- und Verkaufspreise
- /v2/commerce/transactions - Information über aktuelle und vergangene Käufe und Verfäufe im Handelsposten (authentifiziert)
Account- und Charakterinformationen[Bearbeiten]
- /v2/account - persönliche Account-Informationen (authentifiziert)
- /v2/account/achievements - Informationen über den Fortschritt bei Erfolgen (authentifiziert)
- /v2/account/bank - Bankinhalt (authentifiziert)
- /v2/account/dyes - Freigeschaltete Farben (authentifiziert)
- /v2/account/inventory - Inhalt der Gemeinsamen Inventarplätze (authentifiziert)
- /v2/account/materials - Inhalt des Materialienlager (authentifiziert)
- /v2/account/mini - Freigeschaltete Miniaturen (authentifiziert)
- /v2/account/skins - Freigeschaltete Skins (authentifiziert)
- /v2/account/wallet - Inhalt der Geldbörse (authentifiziert)
- /v2/characters - eine Liste mit allen Charakteren (authentifiziert)
- /v2/characters/:id/equipment - Informationen für das Equipment eines Charakters (authentifiziert)
- /v2/characters/:id/inventory - Informationen für das Inventar eines Charakters (authentifiziert)
- /v2/characters/:id/recipes - Informationen über die auf einem Charakter freigeschalteten Rezepte (authentifiziert)
- /v2/characters/:id/specializations - Informationen über die auf einem Charakter ausgewählten Spezialisierungen (authentifiziert)
Erfolge[Bearbeiten]
- /v2/achievements - eine Liste mit IDs der bisher entdeckten Erfolge und Details dazu
- /v2/achievements/categories - eine Liste mit IDs der bisher entdeckten Erfolgskategorien und Details dazu
- /v2/achievements/groups - eine Liste mit IDs der bisher entdeckten Erfolgsgruppen und Details dazu
- /v2/achievements/daily - eine Liste mit IDs der aktuellen Täglichen Erfolge
Gilden[Bearbeiten]
- /v2/emblem - eine Liste der im Spiel verfügbaren Gildenwappenmuster
- /v2/guild/:id - Informationen zur Gilde
- /v2/guild/:id/log - Liste der Verlaufsmeldungen einer Gilde (authentifiziert)
- /v2/guild/:id/members - Liste der Mitglieder einer Gilde (authentifiziert)
- /v2/guild/:id/ranks - Liste der Gilderänge (authentifiziert)
- /v2/guild/:id/stash - Inhalt des Gilden-Geheimvorrat und der Schatzgrube (authentifiziert)
- /v2/guild/:id/treasury - Inhalt der Gilden-Schatzkämmer (authentifiziert)
- /v2/guild/:id/upgrades - Informationen zum Ausbaufortschritt der Gildenhalle (authentifiziert)
- /v2/guild/permissions - Informationen zu den Gildenberechtigungen
- /v2/guild/upgrades - Informationen zu dem möglichen Ausbauten der Gildenhalle
Strukturiertes PvP[Bearbeiten]
- /v2/pvp - persönliche PvP-Informationen (authentifiziert)
- /v2/pvp/games - eine Liste mit IDs und Informationen der letzten 10 PvP-Spiele (authentifiziert)
- /v2/pvp/seasons - API noch nicht aktiv
- /v2/pvp/stats - eine Liste mit allgemeinen PvP-Statistiken (authentifiziert)
Verschiedenes[Bearbeiten]
- /v2/build - die aktuelle Build-ID (Programmversion)
- /v2/colors - eine Liste der im Spiel verfügbaren Farben
- /v2/currencies - eine Liste mit IDs der verfügbaren Währungen und Details dazu
- /v2/files - allgemeine Icons zur Verwendung mit dem Render-Service
- /v2/quaggans - liefert eine Liste von Bezeichnern von Quaggan-Bildern für verschiedene Zwecke
- /v2/skills - eine Liste mit IDs und Informationen der verfügbaren Hilfsfertigkeiten
- /v2/specializations - eine Liste mit IDs und Informationen der verfügbaren Spezialisierungen
- /v2/tokeninfo - Liste der durch den API-Schlüssel verfügbaren Berechtigungen (authentifiziert)
- /v2/traits - eine Liste mit IDs und Informationen der verfügbaren Eigenschaften
- /v2/leaderboards - API noch nicht aktiv
Version 1[Bearbeiten]
Die Version 1 der API bietet folgende Endpunkte:
Welt- und Karteninformation[Bearbeiten]
Die folgenden Endpunkte liefern Informationen, welche in Verbindung mit dynamischen Events, Welt gegen Welt oder dem Kachel-Service genutzt werden können:
- /v1/continents.json - Übersicht über die verfügbaren Kontinente und deren Ebenen
- /v1/maps.json - Detailinformationen über verfügbare Karten
- /v1/map_floor.json - Detailinformationen über eine Kartenebene
- /v1/map_names.json - Namen der Karten, auf welchen Events stattfinden
Dynamische Events[Bearbeiten]
- /v1/events.json - detaillierte Informationen über Events, wie etwa der Status
- /v1/event_details.json - detaillierte Informationen zu einem Event, wie etwa Ortsangaben oder Stufe (kein Status)
- /v1/event_names.json - lokalisierte Namen der Events
Gegenstände[Bearbeiten]
- /v1/items.json - eine Liste mit IDs der bisher entdeckten Gegenstände
- /v1/item_details.json - Detailinformationen über einen Gegenstand
- /v1/recipes.json - eine Liste mit IDs der bisher entdeckten Rezepte
- /v1/recipe_details.json - Detailinformationen über ein Rezept
- /v1/skins.json - eine Liste mit IDs der bisher entdeckten Skins
- /v1/skin_details.json - Detailinformationen über einen Skin
Welt gegen Welt[Bearbeiten]
- /v1/wvw/matches.json - eine Liste der aktuellen Begegnungen
- /v1/wvw/match_details.json - detaillierte Informationen zu einer Begegnung
- /v1/wvw/objective_names.json - eine Liste mit Namen der Befestigungen
- /v1/world_names.json - Namen der Welten
Verschiedenes[Bearbeiten]
- /v1/build.json - die aktuelle Build-ID (Programmversion)
- /v1/colors.json - eine Liste der im Spiel verfügbaren Farben
- /v1/files.json - allgemeine Icons zur Verwendung mit dem Render-Service
- /v1/guild_details.json - Informationen über Gilden, wie Name, Tag und Emblem
Zusätzliche Ressourcen[Bearbeiten]
Kachel-Service[Bearbeiten]
Seit dem 21.6.2013 stellt ArenaNet einen Kachel-Service für Karten zur Verfügung, der die Möglichkeit bietet, mit gängigen Bibliotheken wie z.B. der Google-Maps-API oder leaflet.js eine Karte der Spielwelt zu projizieren (einfaches Beispiel). Das verwendete Kachel-Format ist in der Dokumentation der Google-Maps-API beschrieben. Auf die einzelnen Kacheln kann mittels einer URL nach folgendem Schema zugegriffen werden:
https://tiles.guildwars2.com/{continent_id}/{floor}/{zoom}/{x}/{y}.jpg
Gültige Werte für continent_id
und floor
können über continents.json ermittelt werden. map_floor.json bietet wertvolle Informationen über Kartenbegrenzungen und sichtbare Bereiche, die dem Endbenutzer dargestellt werden sollten. Der Service bietet momentan keine Informationen über Untergründe, etwa wie wenn ein Charakter eine Höhle betritt.
Schriftarten[Bearbeiten]
Zusätzlich zum Kachel-Service wurden zwei Stylesheets zur direkten Einbindung bereitgestellt, um Kartenbeschriftungen in der korrekten Schriftart "Menomonia" darzustellen:
https://d1h9a8s8eodvjz.cloudfront.net/fonts/menomonia/08-02-12/menomonia.css https://d1h9a8s8eodvjz.cloudfront.net/fonts/menomonia/08-02-12/menomonia-italic.css
Icon-Render-Service[Bearbeiten]
Seit dem 6.8.2013 stellt ArenaNet einen Render-Service für Icons zur Verfügung, auf welchen nach folgendem Schema zugegriffen werden kann:
https://render.guildwars2.com/file/{signature}/{file_id}.{format}
Die Parameter signature
und file_id
werden hierbei von verschiedenen APIs (momentan nur items
und files
) bereitgestellt und die Icons können dann sowohl im .png als auch im .jpg-Format ausgegeben werden.
Siehe auch[Bearbeiten]
- offizielles API-Forum (englisch)
- Changelog (englisch)
- Liste der Anwendungen
- Liste der API-Wrapper