Skip to content

Authentication

The Podscribe API authenticates with a bearer token. Podscribe issues the key; ask your Podscribe contact if you do not have one.

Send it in the Authorization header:

Terminal window
curl 'https://backend.podscribe.ai/api/public/episode/search?search=example' \
-H 'Authorization: Bearer YOUR_API_KEY'

Every endpoint takes a key except GET /api/public/file-processor/status/{id}, which is open. Endpoint pages mark the difference: an authenticated operation lists an Authorizations section.

A key resolves to one Podscribe account and carries that account’s permissions. Treat it like a password: keep it on the server side, never in a browser bundle or a mobile app.

Authentication answers with 403 and a JSON body naming the reason.

Body Meaning
{"message": "Invalid token"} No Authorization header, or a key Podscribe does not recognise
{"message": "API access is disabled"} The key is real, but API access is switched off for the account
{"message": "API limit is not configured"} The account has no request allowance set; contact Podscribe
{"message": "Forbidden"} The key is valid and the account lacks the permission this endpoint needs

Requests are also counted against a monthly allowance. Exceeding it returns 429 with {"message": "Monthly request limit exceeded. Please contact support."}. Polling GET /api/public/file-processor/status/{id} and GET /api/public/ai-chat/agent-runs/{runId}/status does not count, so waiting on a job costs nothing.

400 means the request itself did not validate. Endpoint pages list the other failures each endpoint can return.