Zugang
Wie Ihr System sich an der API anmeldet, wer den Schlüssel erstellt, wie Sie ihn ohne Ausfall wechseln und was bei einem falschen Schlüssel zurückkommt.
Diese Leistung erhalten Sie über ein individuelles Angebot.
Das Token gehört zu Ihrer Organisation, nicht zu einer Person. Ein Token, manchmal auch Schlüssel genannt, ist eine lange Zeichenfolge, die für Programme wie ein Passwort wirkt. Ihr System meldet sich damit an der API an. Mit dem Token liest Ihr System die Ausschreibungen, die procuris kennt. Welchen Teil davon es holt, steuert es selbst über Filter.
Anfrage stellen
Das Token steht im Header Authorization. Davor steht das Wort Bearer mit einem Leerzeichen. Der Abruf geht über HTTPS an https://api.procuris.eu. Die Pfade beginnen mit der Version /v1:
GET /v1/tenders/e9da30eb-50e6-47f1-887f-434016267b2f HTTP/1.1
Host: api.procuris.eu
Authorization: Bearer <Ihr Token>
Accept: application/jsonDie API antwortet mit JSON in UTF-8. Abrufe über unverschlüsseltes HTTP lehnt sie ab. Die Ablehnung kommt jedoch erst, nachdem das Token schon im Klartext durch das Netz gegangen ist. Hat Ihr System ein Token einmal über HTTP gesendet, behandeln Sie es darum als öffentlich geworden, siehe Token verloren oder öffentlich geworden.
Lesen, nicht schreiben
Die API liest nur. Sie kennt zwei Abrufe, beide mit GET:
| Abruf | Liefert |
|---|---|
GET /v1/tenders | Liste von Ausschreibungen, gefiltert und seitenweise, siehe Filter und Takt |
GET /v1/tenders/{id} | eine Ausschreibung mit allen Feldern aus dem Datenmodell |
Ihr System kann über die API nichts in procuris ändern. Suchaufträge, Board und Arbeitsmappen bleiben unberührt.
Token erstellen
Tokens erstellt nur die Rolle Inhaber. Das geschieht im Bereich API-Zugang unter Einstellungen › Organisation. Der Bereich erscheint erst, wenn der Zugang nach Vertragsschluss eingerichtet ist, und auch dann sieht ihn nur die Rolle Inhaber. Bis dahin führt die Zeile API-Zugang im Abschnitt Auf Anfrage derselben Seite nur zur Anfrage eines Angebots. Ihre IT baut den Abruf. Das Token bekommt sie von der Inhaberin.
- Die Inhaberin wählt Token erstellen und gibt dem Token einen Namen, zum Beispiel „CRM-Abgleich“.
- procuris zeigt das Token einmal an. Danach ist es nicht mehr lesbar, auch nicht für procuris.
- Die Inhaberin gibt das Token über einen Passwortmanager an Ihre IT weiter, statt per E-Mail oder Chat, weil Nachrichten in Postfächern und Verläufen liegen bleiben.
- Ihre IT legt es im Secret-Speicher des abrufenden Systems ab, nicht im Quellcode, weil Quellcode kopiert und geteilt wird. Ein Secret-Speicher ist ein geschützter Ablageort für Zugangsdaten, den nur das abrufende Programm und wenige Personen lesen dürfen.
Tokens laufen nicht von selbst ab. Wechseln Sie sie trotzdem regelmäßig, zum Beispiel einmal im Jahr. Ein unbemerkt kopiertes Token ist dann spätestens nach diesem Jahr wertlos. Verlässt jemand mit Zugriff auf das Token das Unternehmen, wechseln Sie es zusätzlich, weil die Person das Token sonst weiter nutzen könnte.
Token wechseln ohne Ausfall
Zwei gleichzeitig gültige Tokens erlauben den Wechsel ohne Ausfall. Eine Organisation kann bis zu zwei Tokens haben, und beide teilen sich die Grenze für Abrufe. Bestehen schon zwei Tokens, sperrt die Inhaberin zuerst das, das kein System mehr nutzt. Erst dann ist Platz für ein neues.
- Die Inhaberin erstellt unter API-Zugang ein zweites Token.
- Ihre IT trägt das neue Token in Ihrem System ein und prüft einen Abruf.
- Die Inhaberin entfernt das alte Token unter API-Zugang mit Sperren.
Nutzen zwei Systeme je ein Token, zum Beispiel CRM und ERP, wechseln Sie ein Token nach dem anderen. Ein drittes Token ist nicht möglich. Darum leiht sich das System, dessen Token wechselt, für die Dauer des Wechsels das Token des anderen Systems:
- Ihre IT trägt im CRM vorübergehend das Token des ERP ein und prüft einen Abruf.
- Die Inhaberin sperrt das alte CRM-Token und erstellt ein neues.
- Ihre IT trägt das neue Token im CRM ein. Das ERP läuft die ganze Zeit mit seinem Token weiter.
- Für das ERP wiederholen Sie die Schritte 1 bis 3 mit vertauschten Rollen. Das ERP leiht sich dann das neue CRM-Token.
Beide Systeme rufen während des Wechsels ohne Pause ab. Die Grenze für Abrufe ändert sich dadurch nicht, weil sie ohnehin für beide Tokens zusammen gilt.
Token verloren oder öffentlich geworden
Die Inhaberin sperrt und ersetzt Tokens selbst unter API-Zugang. Eine Sperre wirkt ab dem nächsten Abruf.
- Öffentlich geworden: Steht das Token zum Beispiel in einem Code-Archiv oder einer E-Mail, sperrt die Inhaberin es sofort und erstellt danach ein neues. Der Abgleich ruht, bis Ihre IT das neue Token eingetragen hat. Diese Pause wiegt weniger als ein Token, das Fremde kennen.
- Verloren: Ist das Token nicht mehr auffindbar, aber nicht öffentlich, erstellt die Inhaberin ein neues und sperrt danach das alte. Bestehen schon zwei Tokens, sperrt sie zuerst das verlorene.
- Notfall: Ist niemand mit der Rolle Inhaber erreichbar, schreiben Sie an support@procuris.eu. Wir sperren das Token nach Rückfrage bei Ihrer Organisation. Ein neues Token erstellt danach wieder die Inhaberin.
Ein gesperrtes Token führt zur Antwort 401.
Fehler
Fehler kommen als HTTP-Status mit einer Beschreibung in JSON. Die Beschreibung steht im Antworttext (dem Teil der Antwort nach den Headern). Ihr Format ist application/problem+json nach RFC 9457, dem Internet-Standard für Fehlermeldungen von Schnittstellen:
{
"type": "https://docs.procuris.eu/docs/api/zugang#fehler",
"title": "Token ungültig",
"status": 401,
"detail": "Das Token ist unbekannt oder gesperrt.",
"instance": "/v1/tenders"
}| Status | Bedeutung | Was Ihr System tut |
|---|---|---|
| 400 | Parameter fehlerhaft, zum Beispiel ein Datum ohne ISO 8601 oder ein abgelaufener Cursor | Abruf korrigieren, nicht wiederholen. Bei abgelaufenem Cursor den Lauf ab dem gespeicherten Stand neu beginnen, siehe Filter und Takt |
| 401 | Token fehlt, ist falsch geschrieben oder gesperrt | Token prüfen, nicht wiederholen |
| 403 | für diese Organisation ist kein API-Zugang eingerichtet | Angebot anfordern |
| 404 | keine Ausschreibung mit dieser id. procuris löscht keine Datensätze, darum liefert eine id, die Ihr System schon einmal bekommen hat, weiter einen Datensatz. | id prüfen |
| 429 | Grenze erreicht | nach Retry-After Sekunden erneut abrufen |
| 500, 502, 504 | Störung bei procuris | nach 1, 2, 4, 8 und 16 Minuten erneut versuchen |
| 503 | Wartung | nach Retry-After Sekunden erneut abrufen |
Grenzen
Ohne andere Regelung im Angebot gelten 60 Abrufe je Minute. Die Grenze gilt je Organisation, über beide Tokens zusammen. Ihr Angebot kann höhere Grenzen umfassen.
Drei Header zeigen, wie viele Abrufe noch frei sind. Sie stehen in jeder Antwort auf einen Abruf mit gültigem Token. Bei einer Antwort 401 erkennt procuris keine Organisation, darum fehlen die Header dort.
| Header | Inhalt |
|---|---|
X-RateLimit-Limit | Abrufe je Minute, 60, sofern Ihr Angebot nichts anderes regelt |
X-RateLimit-Remaining | verbleibende Abrufe in der laufenden Minute |
X-RateLimit-Reset | Sekunden bis zum Beginn der nächsten Minute |
Über der Grenze antwortet die API mit 429. Der Header Retry-After nennt die Wartezeit in Sekunden.
Ein stündlicher Abgleich bleibt weit unter der Grenze: 1.000 geänderte Datensätze brauchen bei 100 je Seite 10 Abrufe, während die Grenze 60 je Minute erlaubt.
Verwandte Seiten
Angebot anfordern
Schildern Sie uns, was Sie nutzen oder anbinden möchten. Ihr Angebot richtet sich nach diesem Umfang.