Skip to main content
Tornado API retrieves media, prepares your selected output and delivers the file to your workflow. Start with one supported source URL, inspect the result and its usage, then automate the same steps. For a walkthrough from the dashboard to your first API job, read Your first media workflow. Review the allowance, rate and payment terms shown for your account before submitting work.

Python SDK

The fastest way to integrate Tornado in Python:
See the full SDK documentation on GitHub.

Get Your API Key

1

Create your account and API key

Sign in to the dashboard, complete the onboarding required for your account, then create or retrieve an API key. Keep it on your server.
2

Test Your Key

Verify your API key works by checking your usage:
3

Download Your First Video

Create a download job:

Basic Example

With Custom Storage

You can provide your own storage credentials directly in the request. This is required for marketplace users and optional for direct API users. See Custom Storage for all supported providers.
Supported providers: s3 (AWS S3, Cloudflare R2, MinIO, etc.), blob (Azure Blob Storage), gcs (Google Cloud Storage), oss (Alibaba OSS). See full provider reference.

Poll for Completion

Jobs are processed asynchronously. Poll the status endpoint until completion:

Job Status Values

Response Example

Delivery-link availability and expiry depend on the destination and its access configuration. An expired URL does not mean the file was deleted. See storage, access and retention before relying on a link for lasting access.

Next Steps

Python SDK

Official Python client with async support, polling, and webhooks

Webhooks

Get notified when jobs complete

Batch Downloads

Download entire podcast shows

Custom Storage

Use your own cloud storage (S3, Azure, GCS)