Developer API
Seedance video, Astra and Claude behind one key. Paid in Ink from the wallet you already have.
Get your API key · Read the docs
Keys are issued in Settings → API. Creating one needs a paid plan or a completed Ink top-up.
What you can call
Every request reserves Ink up front and settles to what the vendor reports. Failures refund. The Ink is the same Ink the app spends.
Async generation: submit, poll, download. Seedance 2.5 up to 30 s at 1080p; 2.0 and 2.0 Fast up to 15 s.
POST /v1/video/generations
Ink per second of video
| Model | Resolution | Ink / s | 5 s clip |
|---|---|---|---|
| Seedance 2.5 | 480p | 10.2 | 52 ($0.52) |
| Seedance 2.5 | 720p | 22.9 | 115 ($1.15) |
| Seedance 2.5 | 1080p | 56.8 | 284 ($2.84) |
| Seedance 2.0 | 480p | 6.9 | 35 ($0.35) |
| Seedance 2.0 | 720p | 15.1 | 76 ($0.76) |
| Seedance 2.0 | 1080p | 37.6 | 189 ($1.89) |
| Seedance 2.0 Fast | 480p | 5.6 | 29 ($0.29) |
| Seedance 2.0 Fast | 720p | 12.1 | 61 ($0.61) |
GPT 6 Astra through the OpenAI Responses protocol. Point the OpenAI SDK at Loopling and keep your code.
POST /v1/responses
Ink per million tokens
| Model | Input | Output | Cache read | Cache write |
|---|---|---|---|---|
Astra (gpt-6-astra) | 375 | 1,875 | 38 | 469 |
Opens after vendor certification. GET /v1/models reports which lanes are live today.
Claude Fable 5.1, Opus 5 and Sonnet 5 through the Anthropic Messages protocol. The Anthropic SDK works with a base URL.
POST /v1/messages
Ink per million tokens
| Model | Input | Output | Cache read | Cache write |
|---|---|---|---|---|
Claude Fable 5.1 (claude-fable-5-1) | 1,063 | 5,313 | 27 | 2,125 |
Claude Opus 5 (claude-opus-5) | 532 | 2,657 | 54 | 1,063 |
Claude Sonnet 5 (claude-sonnet-5) | 213 | 1,063 | 22 | 425 |
Opens after vendor certification. GET /v1/models reports which lanes are live today.
$1 = 100 Ink
Prices are published in Ink. Pay-as-you-go Ink costs $1 per 100, and a plan's monthly grant spends the same way. Your API keys draw on the same wallet as the app — grant first, then pay-as-you-go — and each key can carry its own cap.
Generation lanes hold the Ink for what you asked for and refund the difference when the vendor reports less.
Bearer auth, JSON in, JSON out. The first call below submits a clip; the SDK tabs show Astra and Claude with the client you already use.
curl https://loopling.ai/v1/video/generations \
-H "Authorization: Bearer $LOOPLING_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "seedance-2.5",
"prompt": "A paper lantern drifting over a night harbour, slow dolly in",
"aspect_ratio": "16:9",
"resolution": "1080p",
"duration": 5
}'Sign in, open Settings → API and create one. Creating a key needs a paid plan or at least one completed Ink top-up; the key is shown once.
The Ink figure on this page: the Ink rate times the usage the vendor reports, rounded up once per call. Video reserves for the requested duration and settles to the delivered duration; text reserves for the prompt plus the output cap and settles to actual tokens.
Yes. One wallet: the monthly grant first, then pay-as-you-go. Usage from every key shows in Settings → API next to the app's own ledger.
Each key can carry an Ink cap. When it is reached, that key answers 402 while your other keys keep working. Revoking a key refuses new calls immediately; running generations still finish and settle.
Astra speaks the OpenAI Responses protocol, so the OpenAI SDK works with base_url set to Loopling. Claude speaks the Anthropic Messages protocol, so the Anthropic SDK works the same way. Video is plain REST with a polling loop.
60 requests per minute per key, at most 2 video generations running per account, and an optional per-key Ink cap. 429 and 503 carry Retry-After.
loopling.ai · grows with you, grows itself
hello@loopling.ai · community · pricing · Enterprise · API · privacy · terms