> ## Documentation Index
> Fetch the complete documentation index at: https://deepl-c950b784-docs-agentic-readiness-round-2.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Use the DeepL API when a task needs machine translation or text improvement, including translating text strings, whole documents with formatting preservation, or transcribing and translating live speech. Preferred terminology and phrasing may be enforced using customizations (glossaries, style rules, and translation memories). Retrieve supported languages for each product from the `/v3/languages` endpoints.
> Do not use the DeepL API to write, summarize, answer, or classify: it transforms text you supply. Full when-to-use guidance, mapped to endpoints, is at https://developers.deepl.com/AGENTS.md.
> Read the machine-readable API surface instead of inferring request shapes from prose: the REST spec is at https://developers.deepl.com/api-reference/openapi.yaml (also served as openapi.json) and the Voice WebSocket protocol is at https://developers.deepl.com/api-reference/voice/voice.asyncapi.yaml. Both are listed in the RFC 9727 catalog at https://developers.deepl.com/.well-known/api-catalog. These docs also expose an MCP server at https://developers.deepl.com/mcp (Streamable HTTP, no authentication).
> Use https://api.deepl.com for Pro plans and https://api-free.deepl.com for the Free plan. Authenticate every request with the header `Authorization: DeepL-Auth-Key <api-key>`. Never fabricate an API key: ask the user for one, or point them at https://developers.deepl.com/docs/getting-started/quickstart.
> Errors use standard HTTP status codes with a JSON body containing a `message` field, plus a `code` field where available, and an `X-Trace-ID` response header that identifies the request in DeepL's logs. Log `X-Trace-ID` by default. Retry 429 and 5xx with exponential backoff. Do not retry 456, which means the account quota is exhausted, or 400, which means the request itself is invalid.
> There is no fixed request-per-second limit and no `RateLimit` response headers: the service adapts to load. Throttle from the responses instead, honoring `Retry-After` when a 429 or 529 includes it, and capping in-flight requests. See https://developers.deepl.com/docs/best-practices/error-handling.

# Subscription-level cost control

> Set a subscription-wide limit on characters, STT minutes, or STS minutes to cap your maximum costs.

As a DeepL API Pro user, you have the option to set a limit on the amount of characters, STT minutes, or STS minutes consumed across your entire subscription per month, limiting your maximum costs. You activate "Cost Control" on the ["API Usage" tab](https://www.deepl.com/your-account/usage), the central hub for usage and cost settings. This limit applies subscription-wide; for a limit on a single key instead, see [Set a key-level usage limit](/docs/admin/managing-api-keys#set-a-key-level-usage-limit).

## Set a cost control limit

1. Navigate to the ["API Usage" tab](https://www.deepl.com/your-account/usage)
2. Click to change cost control settings for the relevant unit — a separate link manages the limit for each of characters, STT minutes, and STS minutes
3. Check the box to activate the limit
4. Enter the maximum consumption per month
5. Click "Submit" to save the changes

Your new cost control limit is applied immediately.

<Frame caption="Per-unit links for managing subscription-level cost control">
  <img src="https://mintcdn.com/deepl-c950b784-docs-agentic-readiness-round-2/VdhEIqte997foL0o/_assets/images/subscription-level-cost-control.png?fit=max&auto=format&n=VdhEIqte997foL0o&q=85&s=83735f2395a3a9a232fc00670acb39ce" alt="" width="3814" height="1816" data-path="_assets/images/subscription-level-cost-control.png" />
</Frame>

Once you reach your limit, DeepL stops processing further translation requests until the end of the usage period, to avoid exceeding your set maximum cost. If you want to translate more, you can change the cost control limit at any time.

Within the characters unit, the limit is enforced against the sum of Translate API and Write API characters; it's not possible to set separate limits for each. Characters, STT minutes, and STS minutes each have their own independent limit.

## FAQ

#### I have been notified that my Cost Control was raised, but I didn't raise it. What should I do?

Every time your "Cost Control" limit is raised, you receive a notification email for security reasons. If you receive such a notification but did not raise your "Cost Control" limit, we highly suggest you reset your authentication key and the password to your DeepL Pro account as soon as possible.
