Every error the inference and training APIs can return, whether it is safe to retry, and whether it costs you anything.
Every response carries an x-request-id header, including errors. Quote it when you
ask us about a call — it is the only handle that reaches the whole path the request
took.Error bodies follow the OpenAI shape:
{ "error": { "message": "Invalid or revoked API key.", "type": "authentication_error", "code": "INVALID_API_KEY", "param": null }}
Branch on code, not on message. Messages get reworded; codes do not — they are
append-only, and a retired one is never reused.
Almost never. Of the 30 errors below, 2 still produce a usage record:
REQUEST_CANCELLED — Request cancelled by client.
PARTIAL_RESPONSE_TIMEOUT — The response was cut off because the model timed out.
The reason is the same in both cases: the model had already produced output when the
call came apart, so the tokens exist whether or not you received them. Everything else
on this page is free of charge when it fails.
The training API (/v1/accounts/{account}/...) returns the same envelope. A valid key
that may not make a call — its role does not allow it, it is scoped away from the
operation, or the path names an account other than its own — gets
OPERATION_NOT_ALLOWED, whichever of the three it was.
Status
Code
Retry?
Billing
Message
400
BATCH_CUSTOM_ID_DUPLICATE
no
Not billed
Line repeats a custom_id used on an earlier line. Each line needs its own custom_id.
400
BATCH_MODEL_UNSUPPORTED
no
Not billed
Model '' is not available for batch jobs.
400
DATASET_STATE_INVALID
no
Not billed
This dataset is in state '' and does not accept that operation.
400
INVALID_REQUEST
no
Not billed
Invalid request: .
400
JSONL_ENCODING
no
Not billed
The file is not valid UTF-8 (first problem at line ).
400
JSONL_LINE_NOT_OBJECT
no
Not billed
Line is not a JSON object. Each line must be one complete JSON object.
400
JSONL_MISSING_FIELD
no
Not billed
Line is missing the required field ''.
400
TRAINING_BASE_NOT_EXPORTABLE
no
Not billed to you
Fine-tuning this base model produces weights that cannot be served, so this base is not offered for training.
400
TRAINING_TOKENIZE_FAILED
no
Not billed
The dataset could not be prepared for this base model (first problem at line ).
401
INVALID_API_KEY
no
Not billed
Invalid or revoked API key.
402
INSUFFICIENT_BALANCE
no
Not billed
Insufficient credits for this request. Add credits to continue.
402
PAYMENT_REQUIRED
no
Not billed
A payment is overdue on this organization. Update the payment method to continue.
403
AGREEMENT_REQUIRED
no
Not billed
Your organization must accept the current terms of service before using this API.
403
DATA_RESIDENCY_VIOLATION
no
Not billed
Your organization requires data to stay in its region, so this job cannot run on an external service.
403
OPERATION_NOT_ALLOWED
no
Not billed
This API key is not allowed to perform this operation.
403
PROVIDER_NOT_ALLOWED
no
Not billed
The requested service is not available for your organization.
403
PROVIDER_SERVICE_UNAVAILABLE
no
Not billed
This kind of job is not available right now.
403
TENANT_SUSPENDED
no
Not billed
Account is suspended. Contact support or check billing status.
404
DATASET_NOT_FOUND
no
Not billed
Dataset '' does not exist or is not available to this account.
404
JOB_NOT_FOUND
no
Not billed
Job '' does not exist or is not available to this account.
404
MODEL_NOT_FOUND
no
Not billed
Model '' does not exist or is not available to this account.
409
DATASET_ALREADY_EXISTS
no
Not billed
A dataset named '' already exists in this account. Choose another id.
409
DATASET_IN_USE
no
Not billed
This dataset is still referenced by running jobs and cannot be deleted.
409
IDEMPOTENCY_CONFLICT
no
Not billed
An earlier request with the same Idempotency-Key had a different body.
409
JOB_STATE_INVALID
no
Not billed
This job is in state '' and does not accept that operation.
409
MODEL_ALREADY_EXISTS
no
Not billed
A model named '' already exists in this account. Choose another id.
413
BATCH_TOO_LARGE
no
Not billed
A batch can have at most lines and ; this input has lines and .
413
DATASET_TOO_LARGE
no
Not billed
Dataset files must be 1 GB or smaller; '' is .
429
QUOTA_EXCEEDED
no
Not billed
Quota '' exceeded. Request an increase or free up resources.
500
INTERNAL
yes
Not billed to you
An internal error occurred. Reference: .
500
TRAINING_RUN_ABANDONED
yes
Billed
Training could not be completed after several attempts. No further charges were made after the last completed step.
503
STORAGE_UNAVAILABLE
yes
Not billed
Service temporarily unavailable. Please retry.
Retry? = yes means the same request may succeed later with no change on your side.
A no means something about the request or the account has to change first —
retrying it unchanged will fail the same way.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Prentis","description":"One inference API. An OpenAI client and an Anthropic client reach the same models.","colors":{"primary":"#c23f20","light":"#ff8560","dark":"#ff6a45"},"favicon":"https://mintcdn.com/prentis-ai/N5ENIat7Mkyl6KAd/favicon.svg?fit=max\u0026auto=format\u0026n=N5ENIat7Mkyl6KAd\u0026q=85\u0026s=b900f7aa935aac89600b2c81d72832a0","background":{"color":{"light":"#f7f7f8","dark":"#0b0b0d"}},"navbar":{"links":[{"href":"https://compute.prentis.ai","label":"Console"}],"primary":{"type":"button","label":"Get an API key","href":"https://compute.prentis.ai"}},"footer":{"socials":{}},"fonts":{"heading":{"family":"Archivo","weight":600},"body":{"family":"Archivo","weight":400}},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"prentis-ai","hasAudioNarration":false,"actualSubdomain":"prentis-ai","customDomains":["docs.compute.prentis.ai"],"gitSource":{"type":"github","owner":"prentisai","repo":"maas","deployBranch":"main","contentDirectory":"maas-platform/docs-site","isPrivate":true,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"DISABLED"},"WEB_MCP":{"status":"DISABLED"},"NARRATION":{"status":"DISABLED"}},"buildId":"6af42e06ec28eb92a90a0ace","clientVersion":"0.0.4111","searchFilterCounts":[{"language":"default","tag":"API reference","count":27},{"language":"default","tag":"Documentation","count":20},{"language":"default","tag":"Fine-tuning","count":12},{"language":"default","tag":"Datasets","count":7},{"language":"default","tag":"Guides","count":7},{"language":"default","tag":"Platform","count":6},{"language":"default","tag":"Inference","count":5},{"language":"default","tag":"Get started","count":4},{"language":"default","tag":"Models","count":2},{"language":"default","tag":"Reference","count":2}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":"/* latin-ext */\n@font-face {\n font-family: 'DM Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/dmmono/v16/aFTU7PB1QTsUX8KYthSQBLyM.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'DM Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/dmmono/v16/aFTU7PB1QTsUX8KYthqQBA.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* latin-ext */\n@font-face {\n font-family: 'DM Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/dmmono/v16/aFTR7PB1QTsUX8KYvumzEY2tbZX9.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'DM Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/dmmono/v16/aFTR7PB1QTsUX8KYvumzEYOtbQ.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\ncode,pre,kbd,samp,.font-mono,[class*=\"language-\"]{font-family:\"DM Mono\", ui-monospace, SFMono-Regular, Menlo, monospace!important}.nav-logo{display:inline-flex;align-items:center;gap:0.5rem;font-weight:600!important;letter-spacing:-0.03em}.nav-logo::before{content:\"\";flex:none;width:1.75rem;height:1.75rem;background:url(\"/logo/light.svg\") center / contain no-repeat}html.dark .nav-logo::before{background-image:url(\"/logo/dark.svg\")}"}],"page":{"pagePath":"errors","slug":"/errors","pageMetadata":{"title":"Errors","description":"Every error the inference and training APIs can return, whether it is safe to retry, and whether it costs you anything.","href":"/errors"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Every error the inference and training APIs can return, whether it is safe to retry, and whether it costs you anything.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={code:`code`,li:`li`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Note,Table}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Every response carries an `,_jsx(_components.code,{children:`x-request-id`}),` header, including errors. Quote it when you\nask us about a call — it is the only handle that reaches the whole path the request\ntook.`]}),`\n`,_jsx(_components.p,{children:`Error bodies follow the OpenAI shape:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`8`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`8`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"error\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"message\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Invalid or revoked API key.\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"authentication_error\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"code\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"INVALID_API_KEY\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"param\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Branch on `,_jsx(_components.code,{children:`code`}),`, not on `,_jsx(_components.code,{children:`message`}),`. Messages get reworded; codes do not — they are\nappend-only, and a retired one is never reused.`]}),`\n`,_jsx(Heading,{level:`2`,id:`does-a-failed-call-cost-me-anything`,children:`Does a failed call cost me anything?`}),`\n`,_jsxs(_components.p,{children:[`Almost never. Of the 30 errors below, `,_jsx(_components.strong,{children:`2`}),` still produce a usage record:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`REQUEST_CANCELLED`}),` — Request cancelled by client.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`PARTIAL_RESPONSE_TIMEOUT`}),` — The response was cut off because the model timed out.`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`The reason is the same in both cases: the model had already produced output when the\ncall came apart, so the tokens exist whether or not you received them. Everything else\non this page is free of charge when it fails.`}),`\n`,_jsx(Heading,{level:`2`,id:`all-errors`,children:`All errors`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`right`},children:`Status`}),_jsx(_components.th,{children:`Code`}),_jsx(_components.th,{style:{textAlign:`center`},children:`Retry?`}),_jsx(_components.th,{children:`Billing`}),_jsx(_components.th,{children:`Message`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`CONTENT_BLOCKED_INPUT`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`The request was blocked by the content safety policy.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`CONTENT_BLOCKED_OUTPUT`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed to you`}),_jsx(_components.td,{children:`The response was blocked by the content safety policy.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`CONTEXT_LENGTH_EXCEEDED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`Request exceeds the model’s maximum context length of `,` tokens.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`INVALID_REQUEST`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`Invalid request: `,`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`MEDIA_FETCH_FAILED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`yes`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`Could not fetch media from the provided URL.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`MEDIA_UNSUPPORTED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`Media type '`,`' is not supported by model '`,`'.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`MODEL_CAPABILITY_UNSUPPORTED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`Model '`,`' does not support '`,`'.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`UPSTREAM_CONTENT_REJECTED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed to you`}),_jsx(_components.td,{children:`The request was rejected by the model’s content policy.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`401`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`INVALID_API_KEY`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`Invalid or revoked API key.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`402`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`INSUFFICIENT_BALANCE`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`Insufficient credits for this request. Add credits to continue.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`402`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`PAYMENT_REQUIRED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`A payment is overdue on this organization. Update the payment method to continue.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`403`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`AGREEMENT_REQUIRED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`Your organization must accept the current terms of service before using this API.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`403`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`MODEL_NOT_ALLOWED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`This API key is not allowed to use model '`,`'.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`403`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`OPERATION_NOT_ALLOWED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`This API key is not allowed to perform this operation.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`403`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`TENANT_SUSPENDED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`Account is suspended. Contact support or check billing status.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`404`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`MODEL_NOT_FOUND`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`Model '`,`' does not exist or is not available to this account.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`409`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`IDEMPOTENCY_CONFLICT`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`An earlier request with the same Idempotency-Key had a different body.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`413`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`MEDIA_TOO_LARGE`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`Media input exceeds the size limit (`,`). Upload large files first and reference them by id.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`413`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`REQUEST_TOO_LARGE`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`Request is too large for this model. Shorten the input and try again.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`429`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`TENANT_BUDGET_EXCEEDED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`Spending limit reached for this account.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`429`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`TENANT_RATE_LIMITED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`yes`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`Rate limit exceeded for this account. Retry after `,`s.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`429`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`UPSTREAM_RATE_LIMITED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`yes`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`The model is temporarily over capacity. Retry after `,`s.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`499`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`REQUEST_CANCELLED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Billed`})}),_jsx(_components.td,{children:`Request cancelled by client.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`500`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`INTERNAL`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`yes`}),_jsx(_components.td,{children:`Not billed to you`}),_jsxs(_components.td,{children:[`An internal error occurred. Reference: `,`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`503`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`DEPLOYMENT_SCALING_UP`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`yes`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`The deployment is starting up. Retry after `,`s.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`503`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`STORAGE_UNAVAILABLE`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`yes`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`Service temporarily unavailable. Please retry.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`503`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`UPSTREAM_UNAVAILABLE`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`yes`}),_jsx(_components.td,{children:`Not billed to you`}),_jsx(_components.td,{children:`The model is temporarily unavailable. Please retry.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`504`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`PARTIAL_RESPONSE_TIMEOUT`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Billed`})}),_jsx(_components.td,{children:`The response was cut off because the model timed out.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`504`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`REQUEST_DEADLINE_EXCEEDED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`yes`}),_jsx(_components.td,{children:`Not billed to you`}),_jsx(_components.td,{children:`The request exceeded the maximum allowed duration.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`504`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`UPSTREAM_TIMEOUT`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`yes`}),_jsx(_components.td,{children:`Not billed to you`}),_jsx(_components.td,{children:`The model did not respond in time. Please retry.`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`training-and-datasets`,children:`Training and datasets`}),`\n`,_jsxs(_components.p,{children:[`The training API (`,_jsx(_components.code,{children:`/v1/accounts/{account}/...`}),`) returns the same envelope. A valid key\nthat may not make a call — its role does not allow it, it is scoped away from the\noperation, or the path names an account other than its own — gets\n`,_jsx(_components.code,{children:`OPERATION_NOT_ALLOWED`}),`, whichever of the three it was.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`right`},children:`Status`}),_jsx(_components.th,{children:`Code`}),_jsx(_components.th,{style:{textAlign:`center`},children:`Retry?`}),_jsx(_components.th,{children:`Billing`}),_jsx(_components.th,{children:`Message`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`BATCH_CUSTOM_ID_DUPLICATE`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`Line `,` repeats a custom_id used on an earlier line. Each line needs its own custom_id.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`BATCH_MODEL_UNSUPPORTED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`Model '`,`' is not available for batch jobs.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`DATASET_STATE_INVALID`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`This dataset is in state '`,`' and does not accept that operation.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`INVALID_REQUEST`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`Invalid request: `,`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`JSONL_ENCODING`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`The file is not valid UTF-8 (first problem at line `,`).`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`JSONL_LINE_NOT_OBJECT`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`Line `,` is not a JSON object. Each line must be one complete JSON object.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`JSONL_MISSING_FIELD`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`Line `,` is missing the required field '`,`'.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`TRAINING_BASE_NOT_EXPORTABLE`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed to you`}),_jsx(_components.td,{children:`Fine-tuning this base model produces weights that cannot be served, so this base is not offered for training.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`TRAINING_TOKENIZE_FAILED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`The dataset could not be prepared for this base model (first problem at line `,`).`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`401`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`INVALID_API_KEY`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`Invalid or revoked API key.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`402`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`INSUFFICIENT_BALANCE`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`Insufficient credits for this request. Add credits to continue.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`402`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`PAYMENT_REQUIRED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`A payment is overdue on this organization. Update the payment method to continue.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`403`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`AGREEMENT_REQUIRED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`Your organization must accept the current terms of service before using this API.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`403`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`DATA_RESIDENCY_VIOLATION`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`Your organization requires data to stay in its region, so this job cannot run on an external service.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`403`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`OPERATION_NOT_ALLOWED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`This API key is not allowed to perform this operation.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`403`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`PROVIDER_NOT_ALLOWED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`The requested service is not available for your organization.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`403`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`PROVIDER_SERVICE_UNAVAILABLE`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`This kind of job is not available right now.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`403`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`TENANT_SUSPENDED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`Account is suspended. Contact support or check billing status.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`404`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`DATASET_NOT_FOUND`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`Dataset '`,`' does not exist or is not available to this account.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`404`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`JOB_NOT_FOUND`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`Job '`,`' does not exist or is not available to this account.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`404`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`MODEL_NOT_FOUND`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`Model '`,`' does not exist or is not available to this account.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`409`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`DATASET_ALREADY_EXISTS`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`A dataset named '`,`' already exists in this account. Choose another id.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`409`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`DATASET_IN_USE`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`This dataset is still referenced by running jobs and cannot be deleted.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`409`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`IDEMPOTENCY_CONFLICT`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`An earlier request with the same Idempotency-Key had a different body.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`409`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`JOB_STATE_INVALID`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`This job is in state '`,`' and does not accept that operation.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`409`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`MODEL_ALREADY_EXISTS`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`A model named '`,`' already exists in this account. Choose another id.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`413`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`BATCH_TOO_LARGE`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`A batch can have at most `,` lines and `,`; this input has `,` lines and `,`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`413`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`DATASET_TOO_LARGE`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`Dataset files must be 1 GB or smaller; '`,`' is `,`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`429`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`QUOTA_EXCEEDED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`no`}),_jsx(_components.td,{children:`Not billed`}),_jsxs(_components.td,{children:[`Quota '`,`' exceeded. Request an increase or free up resources.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`500`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`INTERNAL`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`yes`}),_jsx(_components.td,{children:`Not billed to you`}),_jsxs(_components.td,{children:[`An internal error occurred. Reference: `,`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`500`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`TRAINING_RUN_ABANDONED`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`yes`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Billed`})}),_jsx(_components.td,{children:`Training could not be completed after several attempts. No further charges were made after the last completed step.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`503`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`STORAGE_UNAVAILABLE`})}),_jsx(_components.td,{style:{textAlign:`center`},children:`yes`}),_jsx(_components.td,{children:`Not billed`}),_jsx(_components.td,{children:`Service temporarily unavailable. Please retry.`})]})]})]}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`Retry? = yes`}),` means the same request may succeed later with no change on your side.\nA `,_jsx(_components.code,{children:`no`}),` means something about the request or the account has to change first —\nretrying it unchanged will fail the same way.`]})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Errors","description":"Every error the inference and training APIs can return, whether it is safe to retry, and whether it costs you anything.","href":"/errors"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Does a failed call cost me anything?","slug":"does-a-failed-call-cost-me-anything","depth":2,"children":[]},{"title":"All errors","slug":"all-errors","depth":2,"children":[]},{"title":"Training and datasets","slug":"training-and-datasets","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"prentis-ai","siteName":"Prentis","title":"Errors - Prentis","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-11T08:57:47.767Z","originalFileLocation":"errors.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Every error the inference and training APIs can return, whether it is safe to retry, and whether it costs you anything.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Prentis\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/prentis-ai/Z7SKdd5Lmipoo44k/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/prentis-ai/Z7SKdd5Lmipoo44k/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/prentis-ai/Z7SKdd5Lmipoo44k/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/prentis-ai/Z7SKdd5Lmipoo44k/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/prentis-ai/Z7SKdd5Lmipoo44k/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/prentis-ai/Z7SKdd5Lmipoo44k/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/prentis-ai/Z7SKdd5Lmipoo44k/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/prentis-ai/Z7SKdd5Lmipoo44k/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/prentis-ai/Z7SKdd5Lmipoo44k/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Errors - Prentis\">\u003cmeta data-mint-head property=\"og:description\" content=\"Every error the inference and training APIs can return, whether it is safe to retry, and whether it costs you anything.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Prentis\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.compute.prentis.ai/errors\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://prentis-ai.mintlify.site/_mintlify/api/og/v2?division=Reference\u0026amp;title=Errors\u0026amp;description=Every+error+the+inference+and+training+APIs+can+return%2C+whether+it+is+safe+to+retry%2C+and+whether+it+costs+you+anything.\u0026amp;theme=8d4bc0888e4ddbbd2b1e51c1\u0026amp;signature=ca97fe2a558504002eec43f2c5157aa3ad065571e7c37f99c7a272eeb5cd38f1\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Errors - Prentis\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Every error the inference and training APIs can return, whether it is safe to retry, and whether it costs you anything.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://prentis-ai.mintlify.site/_mintlify/api/og/v2?division=Reference\u0026amp;title=Errors\u0026amp;description=Every+error+the+inference+and+training+APIs+can+return%2C+whether+it+is+safe+to+retry%2C+and+whether+it+costs+you+anything.\u0026amp;theme=8d4bc0888e4ddbbd2b1e51c1\u0026amp;signature=ca97fe2a558504002eec43f2c5157aa3ad065571e7c37f99c7a272eeb5cd38f1\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/prentis-ai/Z7SKdd5Lmipoo44k/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Prentis\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#c23f20\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.compute.prentis.ai/errors\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/errors.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.compute.prentis.ai/#organization\",\"name\":\"Prentis\",\"url\":\"https://docs.compute.prentis.ai\"},{\"@type\":\"WebSite\",\"@id\":\"https://docs.compute.prentis.ai#website\",\"name\":\"Prentis\",\"url\":\"https://docs.compute.prentis.ai\",\"publisher\":{\"@id\":\"https://docs.compute.prentis.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.compute.prentis.ai/errors#webpage\",\"url\":\"https://docs.compute.prentis.ai/errors\",\"name\":\"Errors\",\"description\":\"Every error the inference and training APIs can return, whether it is safe to retry, and whether it costs you anything.\",\"dateModified\":\"2026-11-11T08:57:47.767Z\",\"isPartOf\":{\"@id\":\"https://docs.compute.prentis.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.compute.prentis.ai/errors#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.compute.prentis.ai/errors#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Reference\",\"item\":\"https://docs.compute.prentis.ai/authentication\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Errors\",\"item\":\"https://docs.compute.prentis.ai/errors\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.compute.prentis.ai/errors#article\",\"headline\":\"Errors\",\"name\":\"Errors\",\"description\":\"Every error the inference and training APIs can return, whether it is safe to retry, and whether it costs you anything.\",\"url\":\"https://docs.compute.prentis.ai/errors\",\"mainEntityOfPage\":{\"@id\":\"https://docs.compute.prentis.ai/errors#webpage\"},\"dateModified\":\"2026-11-11T08:57:47.767Z\",\"publisher\":{\"@id\":\"https://docs.compute.prentis.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.compute.prentis.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Prentis\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Prentis\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/errors.md","siteName":"Prentis","nav":{"global":null,"tabs":[{"tab":"Documentation","groups":[{"group":"Get started","pages":[{"title":"Introduction","href":"/introduction"},{"title":"Quickstart","href":"/quickstart"},{"title":"Concepts","href":"/concepts"},{"title":"Migrating from OpenAI or Anthropic","href":"/migrating"}]},{"group":"Guides","pages":[{"title":"Streaming","href":"/streaming"},{"title":"Tool calling","href":"/tool-calling"},{"title":"Structured outputs","href":"/structured-outputs"},{"title":"Vision","href":"/vision"},{"title":"Speech to text","href":"/speech-to-text"},{"title":"Reliability and error handling","href":"/reliability"},{"title":"Fine-tuning","href":"/fine-tuning"}]},{"group":"Integrations","pages":[{"title":"Portkey","href":"/integrations/portkey"}]},{"group":"Platform","pages":[{"title":"Models and resource names","href":"/models-and-resource-names"},{"title":"Routing and providers","href":"/routing-and-providers"},{"title":"Prentis One","href":"/prentis-one"},{"title":"Rate limits and quotas","href":"/rate-limits-and-quotas"},{"title":"Usage and billing","href":"/usage-and-billing"},{"title":"Data handling","href":"/data-handling"}]},{"group":"Reference","pages":[{"title":"Authentication","description":"Bearer keys, the x-api-key alias, and what happens when a key is revoked.","href":"/authentication"},{"title":"Errors","href":"/errors"}]}]},{"tab":"API reference","pages":[{"title":"API reference","href":"/api-reference/introduction"}]}]},"basePath":"","title":"Errors - Prentis","buildId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","deploymentId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","dynamics":[],"chunks":[]}