Driftwatch

Cloudflare / Cloudflare API /

Behavioral

4XX is now documented on /accounts/{account_id}/realtime/kit/apps

What changed

An unhandled branch in your error handling.

Affects GET /accounts/{account_id}/realtime/kit/apps.

4XX is now documented

Who is affected

Code that reads GET /accounts/{account_id}/realtime/kit/apps.

Before and after

WhereBeforeAfter
GET /accounts/{account_id}/realtime/kit/appsabsent4XX
POST /accounts/{account_id}/realtime/kit/{app_id}/meetingsabsent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/participants/{participant_id}absent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/summaryabsent4XX
POST /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/summaryabsent4XX
POST /accounts/{account_id}/realtime/kit/appsabsent4XX
GET /accounts/{account_id}/realtime/kit/apps/{app_id}absent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/analytics/daywiseabsent4XX
DELETE /accounts/{account_id}/realtime/kit/{app_id}/presets/{preset_id}absent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/analytics/livestreams/daywiseabsent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/analytics/livestreams/overallabsent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/livestreamsabsent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/sessions/{livestream-session-id}absent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/{livestream_id}absent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/{livestream_id}/active-livestream-sessionabsent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/meetingsabsent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}absent4XX
PUT /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}absent4XX
PATCH /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}absent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-livestreamabsent4XX
POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-livestream/stopabsent4XX
POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/kick-allabsent4XX
POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/muteabsent4XX
POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/mute-allabsent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/livestreamabsent4XX
POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/livestreamsabsent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participantsabsent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants/{participant_id}absent4XX
PUT /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants/{participant_id}absent4XX
DELETE /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants/{participant_id}absent4XX
PATCH /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants/{participant_id}absent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/presetsabsent4XX
POST /accounts/{account_id}/realtime/kit/{app_id}/presetsabsent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/presets/{preset_id}absent4XX
PUT /accounts/{account_id}/realtime/kit/{app_id}/presets/{preset_id}absent4XX
PATCH /accounts/{account_id}/realtime/kit/{app_id}/presets/{preset_id}absent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/recordingsabsent4XX
POST /accounts/{account_id}/realtime/kit/{app_id}/recordingsabsent4XX
POST /accounts/{account_id}/realtime/kit/{app_id}/recordings/trackabsent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/recordings/{recording_id}absent4XX
PUT /accounts/{account_id}/realtime/kit/{app_id}/recordings/{recording_id}absent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/sessionsabsent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/peer-report/{peer_id}absent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}absent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/chatabsent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/livestream-sessionsabsent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/participantsabsent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/transcriptabsent4XX
GET /accounts/{account_id}/realtime/kit/{app_id}/webhooks/allabsent4XX

Based on Cloudflare’s published API specification. How severity is decided.