Schnellstart

Schlüssel erstellen, Berechtigungen prüfen, das erste Ranking lesen und Integrationsfehler beheben.

Vor dem Start#

Du brauchst ein ShortsMonkey-Konto und ein serverseitiges Terminal mit HTTPS-Zugriff. Das cURL-Beispiel benötigt cURL, JavaScript benötigt Node.js mit fetch und Python benötigt requests. Alle gezeigten Schlüssel sind Platzhalter; verwende einen Schlüssel deines eigenen Kontos.

1. Schlüssel und Berechtigungen wählen#

Melde dich an, öffne die API-Konsole und kopiere den vollständigen Schlüssel aus der einmaligen Anzeige. REST benötigt api:read, MCP-Tools benötigen mcp:read. Wähle beide für beide Integrationen oder nur die benötigte Berechtigung.

2. Umgebungsvariable setzen#

export SHORTSMONKEY_API_KEY="sm_live_..."

3. Kostenlos prüfen#

GET /v1/auth/verify, GET /v1/credits, GET /v1/credits/costs, Statusprüfungen und Schlüsselverwaltung verbrauchen keine der 10 täglichen Datenabfragen. Authentifizierung und Eigentumsprüfung gelten weiterhin.

Führe im Terminal curl -i https://api.shortsmonkey.com/v1/auth/verify -H "Authorization: Bearer $SHORTSMONKEY_API_KEY" aus. Auch diese REST-Prüfung benötigt api:read. Erwarte HTTP 200, prüfe dann data.authenticated auf true und data.scopes auf api:read. Erfolgreiche Authentifizierung garantiert keine gefüllte Rangliste.

4. Ranking abrufen#

Führe eines der folgenden Beispiele aus; du musst nicht alle drei ausführen. Die Anfrage liest einen gespeicherten stabilen Snapshot chinesischer Long-Videos und ruft YouTube nicht live ab. Prüfe zuerst den HTTP-Status. Lies bei einer Antwort ungleich 200 error.code, statt das Fehler-JSON als Ranking zu behandeln.

5. Antwort und Seitennavigation verstehen#

data.all_data.items enthält die aktuelle Seite vor den Anfragefiltern; data.filter_data.items enthält sie nach Standard- und Anfragefiltern. Beide Arrays können leer sein und unterschiedliche Längen haben; ein leeres Array ist kein Authentifizierungsfehler. Prüfe das Datenalter anhand von meta.snapshot_at und bewahre meta.request_id für die Fehlersuche auf.

Übergebe für die nächste Seite all_data.next_cursor als all_cursor und filter_data.next_cursor als filter_cursor und behalte die ursprünglichen Filter bei. null beendet die jeweilige Ergebnismenge; vertausche die Cursor nicht. Jede erfolgreiche neue REST-Datenanfrage verbraucht einen Tagesaufruf. credits.unlimited gleich true bedeutet keine unbegrenzten Datenanfragen; prüfe daily_usage.remaining.

Erste Anfrage prüfen#

Bei 401 INVALID_API_KEY prüfe den vollständigen sm_live_-Schlüssel, das Leerzeichen nach Bearer, die Umgebungsvariable sowie Ablauf, Widerruf oder Ende der Rotationsfrist. Prüfe bei 403 INSUFFICIENT_SCOPE api:read und bei 403 ACCOUNT_DISABLED den Kontostatus; kontaktiere den Support. Wiederholungen beheben keine Authentifizierungs- oder Berechtigungsprobleme.

Unterscheide 429 anhand von error.code: Warte bei API_DAILY_LIMIT_REACHED bis 00:00 Asia/Shanghai. Reduziere bei RATE_LIMITED Häufigkeit und gleichzeitige Anfragen und beachte Retry-After, falls vorhanden. 503 DATA_STALE bedeutet einen zu alten Snapshot; SERVICE_UNAVAILABLE eine vorübergehende Störung. Wiederhole nur begrenzt mit Backoff und bewahre die Anfrage-ID auf.

Schlüsselsicherheit und Prüfprotokoll#

Bewahre den Schlüssel in einer serverseitigen Umgebungsvariablen oder einem Secret Store auf und sende ihn im Authorization-Header. Er gehört nicht in Browsercode, URLs, Git, Screenshots, Logs oder Analytics. Teile zur Fehlersuche nur Anfrage-ID, Funktion, Zeit, Status und Fehlercode. Rotiere oder widerrufe einen offengelegten Schlüssel in der Konsole und aktualisiere die Serverkonfiguration.

curl -X GET "https://api.shortsmonkey.com/v1/rankings/chinese-low-subscriber-long-videos?period=today&quality=strict&limit=20" \
  -H "Authorization: Bearer $SHORTSMONKEY_API_KEY"