Remove uploads
Removes up to 100 uploads from the media library, as DELETE /uploads/ does for one (an upload that never finished is left in place here: UPLOAD_INCOMPLETE; DELETE it). The call succeeds as a whole: removedIds lists what is gone (including ids that already were), refused lists each id left in place with its reason (NOT_FOUND, IN_USE, UNSUPPORTED_TYPE, UPLOAD_INCOMPLETE). When one id failed for a passing reason the whole call is 503 UNAVAILABLE naming it: what was removed stays removed, so send the call again. More than 100 ids is a 422.
Authorizations
OAuth 2.1 authorization-code flow with PKCE.
- Authorization URL
- https://auth.streamloop.app/api/auth/oauth2/authorize
- Token URL
- https://auth.streamloop.app/api/auth/oauth2/token
Headers
Workspace this request operates in — the workspace id (wksp_…) or the organization id, from GET /workspaces. Required with an API key, which carries no workspace (400 WORKSPACE_REQUIRED without it). With an OAuth token it defaults to the workspace the token was issued for. Responds 403 WORKSPACE_FORBIDDEN when the caller is not a current member, rather than falling back to another workspace.
Optional client-generated key. A repeated request with the same key, method and path (by the same caller in the same workspace) replays the original response, with Idempotency-Replayed: true, for 24 hours instead of running again — safe retries. The same key with a different body is refused with 422 IDEMPOTENCY_KEY_REUSED (nothing runs): use a new key for each new request. A 5xx answer is not remembered (a retry runs).