Skip to main content
What a workspace can do depends on the payer’s plan, read live from the API. These pages never list plans, prices or languages, because those change. Ask the API: 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 feature GET /v3/plan can report. The operation table says which operations declare each.

Models

Plan limits

Read these from limits 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 the RateLimit-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_url from GET /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. overdue on 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:spend with 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.