Answered

2 verschiedene APIs


Benutzerebene 1
Abzeichen

Wie es scheint, gibt es zwei verschiedene APIs. Die offizielle API, die man hier findet: api-docs/personio-personnel-data-api-oa3.yaml at master · personio/api-docs · GitHub

Nun gibt es aber auch Endpunkte <URL>/absence-periods/<absence-id> - auf diese greift das WebGUI zu, ist aber nicht dokumentiert. Wie auch absence-periods?employee_ids=<ID>&absence_type_ids=&start=2024-01-29&end=2024-03-11

 

"approver": {
            "id": <ID>,
            "full_name": "<NAME>",
            "profile_image_url": "<IMAGE>",
            "position": "<POSITION>",
            "preferred_name": "<NAME>"
        },

Im offiziellen API fehlen Teile wie der ganze “approver” Teil. Dieser wird aber schön im WebGUI angezeigt. Dies ist einfach nicht so wirklich brauchbar, oder ich verstehe es nicht.

Warum zwei verschiedene Endpunkte, und wer denkt sich sowas aus?

 

icon

Beste Antwort von Support Integrationen 24 February 2024, 15:14

Zum Originalpost

3 Antworten

Benutzerebene 5
Abzeichen +12

Hallo @pschlae

 

ich bin mir nicht ganz sicher, ob ich Deine Anfrage korrekt verstehe. Grundsätzlich ist es aber so, dass Personio verschiedene APIs und Endpunkte anbietet, die verschiedene Funktionen erfüllen. Die offizielle Dokumentation dazu findest Du bei uns in unserem eigenen Developer Hub und nicht auf GitHub: 

In unserem Helpcenter findest Du allgemeine Erklärungen zu unseren APIs: 

 

Ich hoffe, dass sich die Unklarheiten damit geklärt haben! 

 

Liebe Grüße

Christoph

Benutzerebene 1
Abzeichen

Hallo

Es gibt die offizielle Doku, wie in den Links erwähnt. Schaut man sich die Zugriffe an, dann werden verschiedene nicht dokumentierte API Endpunkte verwendet. Was ein ganz schlechte Praxis ist.

Z.B. die “Details zur Abwesenheit” benutzt https://URL/absence-periods/616460848 und nicht einen offizieller Endpunkt. Warum werden versteckte API genutzt, oder warum sind diese nicht offiziell? Da entstehen Parallel-Welten und Ansammlungen an APIs, die weder für den Kunden noch für Hersteller schlussendlich wartbar sind. Zumal die internen APIs über den grösseren Funktionsumfang verfügen. Dies ist unbefriedigend.

Benutzerebene 5
Abzeichen +12

Hallo @pschlae

 

es ist richtig, dass wir interne APIs nutzen, die sich von den öffentlichen APIs unterscheiden. Dies ist in der Software-Entwicklung durchaus üblich. Wenn Du Dir bestimmte Funktionen für unsere öffentlichen APIs wünscht, schau gern einmal im Ideation-Bereich. Dort kannst Du Deinen Feature-Wunsch einreichen bzw. für diesen voten, falls er schon von einer anderen Perso eingereicht wurde. 

 

Liebe Grüße

Christoph

Deine Antwort