There is no public list of the v3 languages:
GET /v3/languages needs a key, though any valid key will do. The language pages of API v2 are a separate list, not this catalog.
An entitlement’s reason is not_in_plan, subscription_inactive or temporarily_disabled. A feature that is not_in_plan or subscription_inactive answers 403 feature_not_in_plan with feature. A temporarily_disabled one answers 503 feature_temporarily_disabled: retry after Retry-After, or go on without the feature.
What the API does
The operation table has every operation with its scopes.
Plan features
Every featureGET /v3/plan can report. The operation table says which operations declare each.
Models
Plan limits
Read these fromlimits in GET /v3/plan:
outputs_watermarked says whether outputs carry a watermark. Limits for voice samples and body sizes do not depend on the plan: see Voice clones and Conventions.
Rate limits
These are the starting defaults for a paid plan. A trial has lower ones, and a plan can set others. So read theRateLimit-Policy and RateLimit headers, and limit on a 429, rather than hard-code them. Over a limit, the answer is 429 with Retry-After and policy.
The request limits (credential-minute, account-minute, spend-minute, upload-hour and auth-fail-ip) and long-poll are approximate: a key can get somewhat more or fewer requests through than a limit says, and RateLimit is an estimate. Treat a 429 as the signal to wait for Retry-After, and do not count on being refused at an exact number. The other limits in the table are exact.
Job concurrency per payer, counting jobs started through the API (429
too_many_concurrent_jobs with policy: payer-concurrency):
The same 429 with
policy: global-concurrency means Rask as a whole runs its limit of that job type. Wait for Retry-After the same way.
What stays in the web app or with support
- Creating and revoking keys, and changing their caps: Settings in the web app.
- Buying minutes and changing the plan: the web app, at
manage_urlfromGET /v3/plan. No API does it, so on 402 a client tells a person. - A stuck dub or lip-sync: a client cannot cancel these.
overdueon the job means Rask is alerted. If it stays stuck, write to api@rask.ai with the job id. - Testing without paying: there is no sandbox. Use a key without
credits:spendwith the estimates, a mock of the contract (Introduction), and short clips.
What API v3 does not do
- Webhooks. Wait for jobs with getJob.
- A free preview of a segment. generateSegments is the paid way to hear one.
- Multipart uploads. One PUT carries the whole file.
- Other workspaces. A key sees only its own, and it cannot list the workspace’s members.
- Glossary file import. Send the entries in the request body.
- Replacing a clone’s samples. Create a new clone.
- Waveform data and audio-track editing. Neither is exposed.
- Screen recording. It is not part of this API.
- Web and API v2 runs as jobs. They do not appear in listJobs and cannot be canceled here. Read their state on the project.