Verwendung Die Appack Programmierschnittstelle ist technisch ein GraphQL Endpoint. Dies bedeutet, dass HTTP POST Requests mit einem JSON Payload gemäß der GraphQL Spezifikation gesendet werden müssen. Der GraphQL Endpoint lautet: https://api.appack.de/graphql Alle Aufrufe müssen authentifiziert sein, was durch ein Bearer Token erfolgt, das als Header mit jedem Request gesendet wird. Dieses Token muss dem JWT-Standard entsprechen, damit Informationen über den Aufrufer, seine Berechtigungen und die Gültigkeit des Tokens darin enthalten sind. Der initiale API-Token, den Sie erhalten, dient dazu, ein Access Token für API-Aufrufe zu erzeugen. Token-Typen Token Beschreibung API-Token Gültig so lange der API-Zugriff besteht, in der Regel so lange, wie die App betrieben wird. Es enthält Informationen darüber, wer im Kontext welcher App welche Operationen durchführen darf. Access Token Wird zur Authentifizierung von API-Aufrufen verwendet und ist nur 1 Stunde gültig. Es enthält Informationen über Benutzer, App-Kontext und Berechtigungen zum Zeitpunkt der Token-Erstellung. Beispiel: Access Token erzeugen So erzeugen Sie mithilfe Ihres API-Tokens ein Access Token: curl -g -X POST -H "Content-Type: application/json" \ -H "Authorization: Bearer <API-Token>" \ -d '{"query":"{getToken}"}' \ https://api.appack.de/graphql | jq '.data.getToken' fetch("https://api.appack.de/graphql", { method: 'POST', headers: { 'Authorization': 'Bearer <API-Token>', 'Content-Type': 'application/json', 'Accept': 'application/json' }, body: JSON.stringify({query: "{getToken}"}) }).then(r => r.json()).then(response => { console.log(response.data) }) public class GraphQLFetcher { public static void main(String[] args) throws Exception { OkHttpClient client = new OkHttpClient(); RequestBody body = RequestBody.create("{\"query\":\"{getToken}\"}", MediaType.get("application/json; charset=utf-8")); Request request = new Request.Builder() .url("https://api.appack.de/graphql") .post(body) .addHeader("Authorization", "Bearer <API-Token>") .addHeader("Accept", "application/json") .build(); try (Response response = client.newCall(request).execute()) { if (response.body() != null) { System.out.println(response.body().string()); } } } } <?php $ch = curl_init("https://api.appack.de/graphql"); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, '{ "query": "{getToken}" }'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, [ 'Authorization: Bearer <API-Token>', 'Content-Type: application/json', 'Accept: application/json' ]); echo json_decode(curl_exec($ch), true)['data']; curl_close($ch);