API-Referenz - Übersicht api-reference-overview
Die Parallelitätsüberwachungs-API bietet eine RESTful-Schnittstelle zum Verwalten von Streaming-Sitzungen und Durchsetzen von Richtlinien für die gleichzeitige Verwendung. Diese Referenz bietet eine vollständige Dokumentation für alle Endpunkte, Authentifizierungsmethoden, Anfrage-/Antwortformate und Fehlerbehandlung.
API-Basis-URLs
Produktionsumgebung
https://streams.adobeprimetime.com/v2/
Staging-Umgebung
https://streams-stage.adobeprimetime.com/v2/
Hinweis: Verwenden Sie immer die Staging-Umgebung für Entwicklung und Tests. Produktionsberechtigungen werden nur nach erfolgreicher Staging-Integration bereitgestellt.
Authentifizierung
Alle API-Aufrufe erfordern eine HTTP-Standardauthentifizierung mit den Anmeldeinformationen Ihrer Anwendung:
- Benutzername: Ihre Anwendungs-ID (bereitgestellt von Adobe)
- Kennwort: Leere Zeichenfolge
Beispiel einer Authentifizierungs-Kopfzeile
curl -u "<your-app-id>:" https://streams-stage.adobeprimetime.com/v2/sessions
For an application with id "demo-app" the authentication header would be exactly as shown below, including the quotes and colon:
curl -u "demo-app:" https://streams-stage.adobeprimetime.com/v2/sessions
Standards für Antwortformate
Erfolgsantworten
Alle erfolgreichen Antworten folgen dieser Struktur:
{
"status": "success",
"data": {
// Response-specific data
},
"timestamp": "2024-01-15T10:30:00Z"
}
Fehlerantworten
Alle Fehlerantworten folgen dieser Struktur:
{
"associatedAdvice": [
{
"policyName": "string",
"ruleName": "string",
"scope": {},
"attribute": "string",
"threshold": 0,
"conflicts": [
{}
]
}
],
"obligations": [
{
"namespace": "string",
"action": "string",
"arguments": [
"string"
]
}
]
}
Ergebnisformat der Auswertung
Bei der Bewertung von Richtlinien (insbesondere für 409 Konflikte) enthalten die Antworten ein Bewertungsergebnis:
{
"evaluationResult": {
"decision": "DENY",
"obligations": [
{
"id": "obligation-id",
"fulfillOn": "DENY",
"attributes": {
"attribute1": "value1"
}
}
],
"associatedAdvice": [
{
"id": "advice-id",
"adviceType": "rule-violation",
"attributes": {
"rule": "rule-name",
"threshold": 3,
"current": 4,
"conflicts": [
{
"sessionId": "session-123",
"terminationCode": "term-456",
"metadata": {
"deviceId": "device-789",
"channel": "Channel1"
}
}
]
}
}
]
}
}
Gängige HTTP-Status-Codes
Übergabemethoden für Parameter
Pfadparameter
Erforderliche Parameter, die Teil des URL-Pfads sind:
{idp}- Identitäts-Provider-Kennung{subject}- Benutzerkennung (normalerweise aus Adobe Pass){sessionId}- Sitzungskennung (in der Location-Kopfzeile zurückgegeben)
Zusätzliche Parameter
Optionale Parameter werden in der URL übergeben:
GET /sessions/{idp}/{subject}?platform=test
Formulardaten (POST/PUT)
Metadaten und Sitzungsdaten im Anfrageinhalt:
POST /sessions/{idp}/{subject}
Content-Type: application/x-www-form-urlencoded
channel=Channel1&deviceId=device-123&contentType=live
Kopfzeilen
Spezielle Parameter, die in HTTP-Headern übergeben werden:
X-Terminate: termination-code-123
X-Client-Version: 1.0.0
Best Practices für die Fehlerbehandlung
409 Konfliktbehandlung
Wenn Sie eine 409-Konflikt-Antwort erhalten:
- Analysieren Sie das Bewertungsergebnis um die Richtlinienverletzung zu verstehen
- Extrahieren von Konfliktinformationen aus
associatedAdvice - Präsentieren von Optionen für den Benutzer basierend auf Ihrer LIFO/FIFO-Strategie
- Verwenden von Terminations-Codes wenn LIFO-Verhalten implementiert wird
410 Nicht mehr verfügbar
Wenn Sie eine „410 Gone“-Antwort erhalten:
- Überprüfen, ob die Antwort einen Textkörper enthält - zeigt eine Remote-Beendigung an.
- Einlesehinweise um zu verstehen, warum die Sitzung beendet wurde
- Benutzeroberfläche aktualisieren um das Ende der Sitzung widerzuspiegeln
- Anmutig behandeln - Die Sitzung hat möglicherweise eine natürliche Zeitüberschreitung erfahren.
- Neue Sitzung starten - Starten Sie eine neue Sitzung, falls dies angemessen erscheint
Ratenbegrenzung
Wenn Sie eine 429-zu-viele-Anfrage erhalten:
- Anruffrequenz auf bis zu 200 Anfragen pro Minute beschränken, was der von CM akzeptierte Maximalwert ist
- Senden Sie Heartbeats im erforderlichen Intervall von 1 pro Minute.
Test-Tools
Interactive API Explorer
Verwenden Sie unsere Swagger-Benutzeroberfläche für interaktive Tests:
- Geben Sie Ihre Anwendungs-ID oben rechts ein
- Auf „Erkunden“ klicken, um die Authentifizierung festzulegen
- Testen von Endpunkten mit echten Parametern
- Beispiele für Anfragen/Antworten anzeigen