dedlfix: API Schnittstelle

Beitrag lesen

Tach!

ich habe mal eine Frage zum Thema API. Wie wird so eine API angesprochen?

Das hängt von der API ab. API ist ein sehr allgemeiner Begriff. Die konkrete Implementation kann beliebig gestaltet sein.

Hier benötige ich wenn ich es richtig verstanden habe diese Option

Laut der Beschreibung brauchst du erstmal ein Access Token. Das bekommst du, wenn du dich mit einem Key und Secret über /developer/sign-in anmeldest. Wo du Key und Secret herbekommst, ist dort sicher irgendwo dokumentiert.

Du stellst dann HTTP-Requests mit dem Access Token in einer HTTP-Hader-Zeile namens Authorize. Diese Bearer Authorization ist ein gängiges Verfahren.

/time-entries/{stoppedAfter}/{startedBefore} .
Find Time Entries in given range

Aber leider gibt es kein Beispiel.

Die Angaben in geschweiften Klammern sind Platzhalter für Parameterwerte. Die verlinkte Dokumentationsseite schreibt dazu etwas. Zum einen steht davor, welches HTTP-Verb zu verwenden ist, in dem Fall GET. Also ist diese URL mit einem GET-Request anzusprechen. Klickt man auf die Zeile gibts weitere Informationen. Nach der Beschreibung der Parameter wird beschrieben, welche Responses mit welchem Statuscode es geben kann und wie diese aussehen. Das ist also JSON, das du mit den entsprechenden PHP-Funktionen parsen lassen kannst.

Die Dokumentation ist gleichzeitig ein Testsystem, mit dem du auch Requests an das System absetzen und die Antwort sehen kannst. Ich nehme dazu aber lieber den Postman, der bietet mehr Komfort.

Ich möchte gerne die Daten auf meiner Seite ausgeben also mit PHP. Hat jemand von euch mit einer API Erfahrung?

Dazu musst du dich belesen, wie du Requests absetzt, wie du denen HTTP-Header mitgibst (für das Authorize), wie du das Ergebnis bekommst. Ich kann dir dazu noch das Stichwort REST-API auf den Weg geben, denn die vorliegende API arbeitet nach diesem Prinzip.

Man kann sowas grundsätzlich in PHP realisieren über cURL oder über Dateisystem-Funktionen wie file_get_contents() oder mit Low-Level-Netzwerk-Funktionen. Ich würde wohl file_get_contents() bevorzugen. Die Einzelheiten des Requests kann man da über den Parameter context steuern, dem man einen so genannten Stream-Context mitgibt. Dazu gibts aber Beispiele im PHP-Handbuch.

dedlfix.