Erfahren Sie, wie Sie Ihre API-Integrationen von OAuth 1 auf OAuth V2 aktualisieren: technische Unterschiede, Änderungen an Endpunkten, Token-Verwaltung und Best Practices für eine sichere und unterbrechungsfreie Migration.

Der Openapi OAuth-Dienst stellt die zentrale Authentifizierungs- und Autorisierungsinfrastruktur („sicherer Zugriffsschlüssel“) für das gesamte API-Ökosystem der Plattform dar.
Der Wechsel von Version 1.0.0 zu 2.0.0 (V2) ist kein einfaches Versions-Upgrade, sondern eine Umstellung auf ein zustandsbehaftetes (stateful) Management-Modell. Während V1 sich auf die Generierung von Zugriffstokens beschränkte, führt V2 ein granuläres Transaktionsmonitoring über Wallet, multidimensionale Statistiken (Stats) sowie ein auf Sicherheitsrotation ausgerichtetes Token-Lifecycle-Management ein.
Die Migration erfordert die Aktualisierung der Netzwerkparameter. Die wichtigste Änderung betrifft den Wechsel von der nationalen Top-Level-Domain (TLD) .it zur internationalen Domain .com.
| Umgebung | OAuth 1 URL (Legacy) | OAuth V2 URL (Aktuell) |
|---|---|---|
| Produktion | oauth.openapi.it | oauth.openapi.com |
| Sandbox | test.oauth.openapi.it | test.oauth.openapi.com |
Erforderliche Maßnahme: Alle Endpoint-Verweise im Quellcode müssen aktualisiert werden. Es wird empfohlen, Umgebungsvariablen oder eine globale „Suchen-und-Ersetzen“-Prozedur zu verwenden, um die Änderung der TLD von .it zu .com abzubilden.
V2 führt eine pluralisierte RESTful-Namenskonvention für die Verwaltung von Token-Ressourcen ein. Der Endpoint für Token-Operationen wird von /token auf /tokens geändert.
In V2 erweitert der POST /tokens-Endpoint die granulare Steuerung über die einfachen Felder scopes und ttl hinaus. Unterstützt werden nun die folgenden im TokenCreate-Schema definierten Parameter: name (mnemonischer Identifier für Audit-Logs), limit_total (maximales Anfragevolumen), limit_paid (maximales Volumen kostenpflichtiger Anfragen), ips (Whitelist autorisierter IP-Adressen) und wallet_limit (aus dem globalen Wallet zugewiesenes Budget).
Während in V1 die PATCH-Methode auf partielle Metadatenänderungen beschränkt war, ist in V2 die Methode PATCH /tokens/{token} standardisiert, um den Token-Rotations- bzw. Refresh-Flow zu unterstützen. Dadurch können Zugangsdaten rotiert und Berechtigungen aktualisiert werden, ohne den bestehenden Identifier zu invalidieren, was die Betriebskontinuität und Sicherheit gewährleistet.
V2 gibt das Objekt TokenDetail (Teil des TokenListOrDetail-Schemas) zurück und integriert Limits sowie Metadaten, die zuvor nicht verfügbar waren.
OAuth 1 Antwort (Legacy):
{
"scopes": ["POST:valutometro.altravia.com/valutazione"],
"expire": 1634223407,
"token": "5f8711afe4754a532a7a8358",
"success": true,
"message": "",
"error": null
}
OAuth V2 Antwort (TokenDetail):
{
"name": "Production_Token_01",
"token": "6f9822bgf5862b643b8b9469",
"expire": 1735689600,
"scopes": [
{
"domain": "imprese.openapi.it",
"endpoint": "base",
"method": "GET"
}
],
"limits": {
"limit_total": 1000,
"limit_paid": 500,
"wallet_limit": 50.00
},
"ips": ["192.168.1.1"],
"success": true
}
V2 führt das Finanzmanagement über das Wallet-Modul ein und sorgt für vollständige Transparenz der Transaktionen. Die Abfrage des Kontostands erfolgt nun über GET /wallet und ersetzt das frühere /credit. Die Nachverfolgbarkeit von Transaktionen wird durch GET /wallet/transactions gewährleistet, das Zugriff auf die Transaktionshistorie bietet. Im Gegensatz zum statischen Wert in V1 ist die Historie in V2 paginierbar, was detaillierte Analysen für Konten mit hohem Transaktionsvolumen ermöglicht.
Das V1-System /counters, das auf starren zeitlichen Aggregationen basierte, wird durch die multidimensionale /stats-Engine ersetzt. Die Granularität von V2 ermöglicht Aggregationen nach Token, IP, Domain und Scope. Aufrufe wie GET /stats/ips identifizieren eindeutige IP-Adressen, GET /stats/apis aggregiert die Nutzung nach API-Domain und GET /stats/apis/{domain} liefert die genaue Aufschlüsselung der innerhalb einer bestimmten Domain verwendeten Scopes. Zusätzlich stehen integrierte Logs zur Fehleranalyse über /errors zur Verfügung.
Version 2.0.0 führt zuvor nicht vorhandene Monitoring-Endpunkte ein:
| Aktion | OAuth 1 Endpoint (Legacy) | OAuth V2 Endpoint (Ersatz) | Technische Hinweise |
|---|---|---|---|
| Token-Erstellung | POST /token | POST /tokens | Unterstützt neue Parameter limits und ips. |
| Token-Liste | GET /token | GET /tokens | Gibt TokenListOrDetail zurück. |
| Token-Details | GET /token/{token} | GET /tokens/{token} | Enthält erweiterte Metadaten. |
| Rotation / Update | PUT /token/{token} | PATCH /tokens/{token} | V2 bevorzugt PATCH für sichere Rotation. |
| Löschung | DELETE /token/{token} | DELETE /tokens/{token} | Sofortige Entfernung der Ressource. |
| Scope-Details | Nicht verfügbar | GET /scopes/{id} | Gibt ScopeDetail-Objekt zurück. |
| Credit / Wallet | GET /credit | GET /wallet | Übergang zu einem transaktionsbasierten System. |
| Transaktionen | Nicht verfügbar | GET /wallet/transactions | Paginierte Historie. |
| Globale Statistiken | GET /counters/total | GET /stats | Globale aggregierte Metriken. |
In OAuth 1 wurden Scopes als einfache String-Arrays behandelt, während in V2 jeder Scope zu einer überprüfbaren Ressource wird, abrufbar über GET /scopes/{id}. Die Antwort liefert ein ScopeDetail-Objekt mit Domain und zugehörigem Endpoint sowie spezifischen Anforderungen und Limits (ScopeLimits). Die Bedeutung des TTL (Time-To-Live)-Parameters bleibt zentral: Best Practice ist die Verwendung kurzlebiger Tokens, um die Angriffsfläche zu minimieren. Falls nicht angegeben, setzt das System standardmäßig einen TTL von einem Jahr, und V2 erleichtert dieses Management durch vereinfachte Rotation über PATCH.