Skip to content
Jellypod
Esc
↑↓navigate↵open⌘Jpreview

Export saved episode content

POST/v1/episodes/{episode_id}/export
Authorization
AuthorizationBearer token · headerrequired

API key issued from /settings/api-keys in the Jellypod studio. Send as Authorization: Bearer <key>.

Path parameters
episode_idstring<uuid>required

Episode UUID

Header parameters
idempotency-keystring

Optional key for one logical generation command. Reuse the same key and input after a lost or uncertain response. After a proven rejection before work starts, follow recovery.idempotency_key. Omit it to start a new generation on every request.

min length 1 · max length 255 · matches ^[\x21-\x7e]+$
Request body
requiredapplication/json
outputsstring[]required
min items 1 · max items 2
Responses
202

Requested files are available or being prepared from saved content. Poll the episode for readiness.

dataobjectrequired
Show properties
idstring<uuid>required
outputsobjectrequired
Show properties
audioobjectrequired
Show properties
currentbooleanrequired
download_urlstring<uri> | nullrequired
errorstring | nullrequired
statusstringrequired
Allowed:not_requestedpreparingavailablefailed
videoobjectrequired
Show properties
currentbooleanrequired
download_urlstring<uri> | nullrequired
errorstring | nullrequired
statusstringrequired
Allowed:not_requestedpreparingavailablefailed
progressobjectrequired
Show properties
errorstring | nullrequired
needs_attentionobject | nullrequired
Show properties
missing_visualsintegerrequired
min 0
skipped_sourcesintegerrequired
min 0
unvoiced_linesintegerrequired
min 0
phasestring | nullrequired
poll_after_secondsnumberrequired
min 0
render_requiredbooleanrequired

True when the content is ready but has no playable or downloadable output and nothing is preparing one, as after a caption or watermark edit. Outputs stay unavailable until a new render or export is requested.

statusstringrequired
Allowed:idlegeneratingcompletedfailed
400

Validation failed or malformed request.

detailstring

Longer human-readable explanation when available.

errorsobject[]

Per-field validation failures. Present when type is validation_error.

Show properties
Array of object
fieldstringrequired
messagestringrequired
reasonstring

Script import failure when one or more Speakers have no saved Character match.

Allowed:unresolved_speakers
recoveryobject
Show properties
actionstringrequired
Allowed:correct_inputchoose_characterscheck_accountpoll_contentopen_studiocheck_contentreconnectretrycheck_result
idempotency_keystring
Allowed:reusenew
poll_after_secondsnumber
min 0
toolstring
Allowed:list_characterslist_contentget_contentsave_podcast
request_idstring

Correlation id, also returned in the X-Request-Id response header. Include in support requests.

speakersstring[]

Speaker labels needing a saved Character match when reason is unresolved_speakers.

statusintegerrequired

HTTP status code mirrored from the response.

titlestringrequired

Short human-readable summary.

typestringrequired

Machine-readable error class. Suitable for switch/match in client code.

Allowed:bad_requestvalidation_errorunauthorizedforbiddennot_foundconflictmethod_not_allowedunsupported_media_typeunprocessable_entityrate_limitedbad_gatewayinternal_error
401

Missing or invalid API key.

detailstring

Longer human-readable explanation when available.

errorsobject[]

Per-field validation failures. Present when type is validation_error.

Show properties
Array of object
fieldstringrequired
messagestringrequired
reasonstring

Script import failure when one or more Speakers have no saved Character match.

Allowed:unresolved_speakers
recoveryobject
Show properties
actionstringrequired
Allowed:correct_inputchoose_characterscheck_accountpoll_contentopen_studiocheck_contentreconnectretrycheck_result
idempotency_keystring
Allowed:reusenew
poll_after_secondsnumber
min 0
toolstring
Allowed:list_characterslist_contentget_contentsave_podcast
request_idstring

Correlation id, also returned in the X-Request-Id response header. Include in support requests.

speakersstring[]

Speaker labels needing a saved Character match when reason is unresolved_speakers.

statusintegerrequired

HTTP status code mirrored from the response.

titlestringrequired

Short human-readable summary.

typestringrequired

Machine-readable error class. Suitable for switch/match in client code.

Allowed:bad_requestvalidation_errorunauthorizedforbiddennot_foundconflictmethod_not_allowedunsupported_media_typeunprocessable_entityrate_limitedbad_gatewayinternal_error
403

Authenticated, but this API key does not have access to this resource.

detailstring

Longer human-readable explanation when available.

errorsobject[]

Per-field validation failures. Present when type is validation_error.

Show properties
Array of object
fieldstringrequired
messagestringrequired
reasonstring

Script import failure when one or more Speakers have no saved Character match.

Allowed:unresolved_speakers
recoveryobject
Show properties
actionstringrequired
Allowed:correct_inputchoose_characterscheck_accountpoll_contentopen_studiocheck_contentreconnectretrycheck_result
idempotency_keystring
Allowed:reusenew
poll_after_secondsnumber
min 0
toolstring
Allowed:list_characterslist_contentget_contentsave_podcast
request_idstring

Correlation id, also returned in the X-Request-Id response header. Include in support requests.

speakersstring[]

Speaker labels needing a saved Character match when reason is unresolved_speakers.

statusintegerrequired

HTTP status code mirrored from the response.

titlestringrequired

Short human-readable summary.

typestringrequired

Machine-readable error class. Suitable for switch/match in client code.

Allowed:bad_requestvalidation_errorunauthorizedforbiddennot_foundconflictmethod_not_allowedunsupported_media_typeunprocessable_entityrate_limitedbad_gatewayinternal_error
404

Resource not found.

detailstring

Longer human-readable explanation when available.

errorsobject[]

Per-field validation failures. Present when type is validation_error.

Show properties
Array of object
fieldstringrequired
messagestringrequired
reasonstring

Script import failure when one or more Speakers have no saved Character match.

Allowed:unresolved_speakers
recoveryobject
Show properties
actionstringrequired
Allowed:correct_inputchoose_characterscheck_accountpoll_contentopen_studiocheck_contentreconnectretrycheck_result
idempotency_keystring
Allowed:reusenew
poll_after_secondsnumber
min 0
toolstring
Allowed:list_characterslist_contentget_contentsave_podcast
request_idstring

Correlation id, also returned in the X-Request-Id response header. Include in support requests.

speakersstring[]

Speaker labels needing a saved Character match when reason is unresolved_speakers.

statusintegerrequired

HTTP status code mirrored from the response.

titlestringrequired

Short human-readable summary.

typestringrequired

Machine-readable error class. Suitable for switch/match in client code.

Allowed:bad_requestvalidation_errorunauthorizedforbiddennot_foundconflictmethod_not_allowedunsupported_media_typeunprocessable_entityrate_limitedbad_gatewayinternal_error
409

The content is generating, already usable, or failed in a way another attempt cannot fix. Nothing was started; the message says what to do instead.

detailstring

Longer human-readable explanation when available.

errorsobject[]

Per-field validation failures. Present when type is validation_error.

Show properties
Array of object
fieldstringrequired
messagestringrequired
reasonstring

Script import failure when one or more Speakers have no saved Character match.

Allowed:unresolved_speakers
recoveryobject
Show properties
actionstringrequired
Allowed:correct_inputchoose_characterscheck_accountpoll_contentopen_studiocheck_contentreconnectretrycheck_result
idempotency_keystring
Allowed:reusenew
poll_after_secondsnumber
min 0
toolstring
Allowed:list_characterslist_contentget_contentsave_podcast
request_idstring

Correlation id, also returned in the X-Request-Id response header. Include in support requests.

speakersstring[]

Speaker labels needing a saved Character match when reason is unresolved_speakers.

statusintegerrequired

HTTP status code mirrored from the response.

titlestringrequired

Short human-readable summary.

typestringrequired

Machine-readable error class. Suitable for switch/match in client code.

Allowed:bad_requestvalidation_errorunauthorizedforbiddennot_foundconflictmethod_not_allowedunsupported_media_typeunprocessable_entityrate_limitedbad_gatewayinternal_error
415

Request Content-Type is not supported for this endpoint.

detailstring

Longer human-readable explanation when available.

errorsobject[]

Per-field validation failures. Present when type is validation_error.

Show properties
Array of object
fieldstringrequired
messagestringrequired
reasonstring

Script import failure when one or more Speakers have no saved Character match.

Allowed:unresolved_speakers
recoveryobject
Show properties
actionstringrequired
Allowed:correct_inputchoose_characterscheck_accountpoll_contentopen_studiocheck_contentreconnectretrycheck_result
idempotency_keystring
Allowed:reusenew
poll_after_secondsnumber
min 0
toolstring
Allowed:list_characterslist_contentget_contentsave_podcast
request_idstring

Correlation id, also returned in the X-Request-Id response header. Include in support requests.

speakersstring[]

Speaker labels needing a saved Character match when reason is unresolved_speakers.

statusintegerrequired

HTTP status code mirrored from the response.

titlestringrequired

Short human-readable summary.

typestringrequired

Machine-readable error class. Suitable for switch/match in client code.

Allowed:bad_requestvalidation_errorunauthorizedforbiddennot_foundconflictmethod_not_allowedunsupported_media_typeunprocessable_entityrate_limitedbad_gatewayinternal_error
422

Request was well-formed but the resource is in a state that does not allow this operation (e.g. publishing an episode that has not finished rendering).

detailstring

Longer human-readable explanation when available.

errorsobject[]

Per-field validation failures. Present when type is validation_error.

Show properties
Array of object
fieldstringrequired
messagestringrequired
reasonstring

Script import failure when one or more Speakers have no saved Character match.

Allowed:unresolved_speakers
recoveryobject
Show properties
actionstringrequired
Allowed:correct_inputchoose_characterscheck_accountpoll_contentopen_studiocheck_contentreconnectretrycheck_result
idempotency_keystring
Allowed:reusenew
poll_after_secondsnumber
min 0
toolstring
Allowed:list_characterslist_contentget_contentsave_podcast
request_idstring

Correlation id, also returned in the X-Request-Id response header. Include in support requests.

speakersstring[]

Speaker labels needing a saved Character match when reason is unresolved_speakers.

statusintegerrequired

HTTP status code mirrored from the response.

titlestringrequired

Short human-readable summary.

typestringrequired

Machine-readable error class. Suitable for switch/match in client code.

Allowed:bad_requestvalidation_errorunauthorizedforbiddennot_foundconflictmethod_not_allowedunsupported_media_typeunprocessable_entityrate_limitedbad_gatewayinternal_error
429

Rate limit exceeded. Wait Retry-After seconds before retrying; RateLimit-Limit, RateLimit-Remaining, and RateLimit-Reset describe the window.

detailstring

Longer human-readable explanation when available.

errorsobject[]

Per-field validation failures. Present when type is validation_error.

Show properties
Array of object
fieldstringrequired
messagestringrequired
reasonstring

Script import failure when one or more Speakers have no saved Character match.

Allowed:unresolved_speakers
recoveryobject
Show properties
actionstringrequired
Allowed:correct_inputchoose_characterscheck_accountpoll_contentopen_studiocheck_contentreconnectretrycheck_result
idempotency_keystring
Allowed:reusenew
poll_after_secondsnumber
min 0
toolstring
Allowed:list_characterslist_contentget_contentsave_podcast
request_idstring

Correlation id, also returned in the X-Request-Id response header. Include in support requests.

speakersstring[]

Speaker labels needing a saved Character match when reason is unresolved_speakers.

statusintegerrequired

HTTP status code mirrored from the response.

titlestringrequired

Short human-readable summary.

typestringrequired

Machine-readable error class. Suitable for switch/match in client code.

Allowed:bad_requestvalidation_errorunauthorizedforbiddennot_foundconflictmethod_not_allowedunsupported_media_typeunprocessable_entityrate_limitedbad_gatewayinternal_error
500

Internal server error.

detailstring

Longer human-readable explanation when available.

errorsobject[]

Per-field validation failures. Present when type is validation_error.

Show properties
Array of object
fieldstringrequired
messagestringrequired
reasonstring

Script import failure when one or more Speakers have no saved Character match.

Allowed:unresolved_speakers
recoveryobject
Show properties
actionstringrequired
Allowed:correct_inputchoose_characterscheck_accountpoll_contentopen_studiocheck_contentreconnectretrycheck_result
idempotency_keystring
Allowed:reusenew
poll_after_secondsnumber
min 0
toolstring
Allowed:list_characterslist_contentget_contentsave_podcast
request_idstring

Correlation id, also returned in the X-Request-Id response header. Include in support requests.

speakersstring[]

Speaker labels needing a saved Character match when reason is unresolved_speakers.

statusintegerrequired

HTTP status code mirrored from the response.

titlestringrequired

Short human-readable summary.

typestringrequired

Machine-readable error class. Suitable for switch/match in client code.

Allowed:bad_requestvalidation_errorunauthorizedforbiddennot_foundconflictmethod_not_allowedunsupported_media_typeunprocessable_entityrate_limitedbad_gatewayinternal_error
502

The API could not enqueue the downstream asynchronous workflow.

detailstring

Longer human-readable explanation when available.

errorsobject[]

Per-field validation failures. Present when type is validation_error.

Show properties
Array of object
fieldstringrequired
messagestringrequired
reasonstring

Script import failure when one or more Speakers have no saved Character match.

Allowed:unresolved_speakers
recoveryobject
Show properties
actionstringrequired
Allowed:correct_inputchoose_characterscheck_accountpoll_contentopen_studiocheck_contentreconnectretrycheck_result
idempotency_keystring
Allowed:reusenew
poll_after_secondsnumber
min 0
toolstring
Allowed:list_characterslist_contentget_contentsave_podcast
request_idstring

Correlation id, also returned in the X-Request-Id response header. Include in support requests.

speakersstring[]

Speaker labels needing a saved Character match when reason is unresolved_speakers.

statusintegerrequired

HTTP status code mirrored from the response.

titlestringrequired

Short human-readable summary.

typestringrequired

Machine-readable error class. Suitable for switch/match in client code.

Allowed:bad_requestvalidation_errorunauthorizedforbiddennot_foundconflictmethod_not_allowedunsupported_media_typeunprocessable_entityrate_limitedbad_gatewayinternal_error
Try it
Server
Authorization
Parameters
Bodyapplication/json
Request
curl -X POST 'https://api.jellypod.com/v1/episodes/497f6eca-6276-4993-bfeb-53cbbbba6f08/export' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "outputs": [
    "audio"
  ]
}'
Response
{
  "data": {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "outputs": {
      "audio": {
        "current": true,
        "download_url": "http://example.com",
        "error": "string",
        "status": "not_requested"
      },
      "video": {
        "current": true,
        "download_url": "http://example.com",
        "error": "string",
        "status": "not_requested"
      }
    },
    "progress": {
      "error": "string",
      "needs_attention": {
        "missing_visuals": 0,
        "skipped_sources": 0,
        "unvoiced_lines": 0
      },
      "phase": "string",
      "poll_after_seconds": 0,
      "render_required": true,
      "status": "idle"
    }
  }
}

Was this page helpful?