Skip to main content
When a request fails, the API returns a JSON response that contains error information:
{
    "error": {
        "type": "content_filter",
        "message": "The request was rejected because it was considered high risk"
    }
}

Error List

400 — Bad Request

error typeTypical messageCause and fix
content_filterThe request was rejected because it was considered high riskThe input or model output triggered content safety review. Modify the prompt and avoid sensitive or high-risk content.
invalid_request_errorRequest format error, missing required parameter, or invalid parameter typeCheck the request body against the API documentation.
invalid_request_errorInput token length too longThe input tokens exceed the model’s maximum context limit. Shorten the input or use a model with a larger context window.
invalid_request_errorprompt tokens + max_tokens exceeds the model specificationReduce max_tokens or switch to another model.
invalid_request_errorInvalid purpose: only ‘file-extract’ acceptedThe purpose field for file upload is incorrect. Currently, only file-extract is supported.
invalid_request_errorFile size is too large, max file size is 100MB, please confirm and re-upload the fileThe uploaded file exceeds the 100MB limit. Compress or split the file and upload it again.
invalid_request_errorFile size is zero, please confirm and re-upload the fileThe uploaded file size is 0. Check whether the file is corrupted or empty.
invalid_request_errorToo many uploaded filesThe total number of uploaded files exceeds the limit. Delete earlier files that are no longer used, then try again.

401 — Authentication Error

error typeTypical messageCause and fix
invalid_authentication_errorInvalid AuthenticationThe API key is invalid or malformed. Check Authorization: Bearer <key>.
incorrect_api_key_errorIncorrect API key providedThe API key was not provided, or the key is incorrect.
Platform key isolation: Keys issued on platform.kimi.ai are independent from keys issued on other regional Kimi platforms. Mixing keys across platforms returns 401. Make sure the endpoint matches the platform where the key was created.

403 — Permission Error

error typeTypical messageCause and fix
permission_denied_errorThe API you are accessing is not openThis API is not currently available to your account.
permission_denied_errorYou are not allowed to get other user infoYou are not allowed to access other users’ information. Check the permission scope for the API.
permission_denied_errorYour IP is not allowed to access this organizationThe calling IP is not in the organization’s allowlist. This is common on the international platform. Contact an administrator to add the IP.

404 — Resource Not Found

error typeTypical messageCause and fix
resource_not_found_errorModel not found, or this account does not have permission to access the modelCheck the spelling of the model parameter and the account tier.

429 — Rate Limit / Insufficient Quota

error typeTypical messageCause and fix
engine_overloaded_errorThe engine is currently overloaded, please try again laterThere are too many concurrent requests and the node is rate-limited. Try again later. For sustained high-frequency usage, consider increasing your tier or topping up.
exceeded_current_quota_errorAccount balance is insufficient or the account has been disabledCheck your balance and billing status.
exceeded_current_quota_errorToken quota is insufficientTop up your account and try again.
rate_limit_reached_errorOrganization-level concurrency limit reachedReduce concurrency or retry after the time indicated in the response.
rate_limit_reached_errorOrganization-level RPM limit reachedRetry after waiting for the time indicated in the response. RPM means requests per minute.
rate_limit_reached_errorOrganization-level TPM limit reachedReduce request frequency or upgrade your tier. TPM means tokens per minute.
rate_limit_reached_errorOrganization-level TPD limit reachedThe limit will reset the next day, or you can upgrade your plan. TPD means tokens per day.

499 / 500 / 503 — Connection And Server Errors

HTTPerror typeCause and fix
499client_closed_requestThe client disconnected before the server returned a response. This is common when a streaming response is cut off by an intermediate proxy or when the user cancels the request. Check KeepAlive and timeout settings.
500server_error / unexpected_outputInternal server error. Try again later. If the issue persists, contact support with the request_id.
503server_unavailableThe service is temporarily unavailable. Try again later. This is usually related to node scaling or maintenance.

Troubleshooting Tips

  • 401 response: First confirm that you are using an API key from the correct platform.
  • 429 response: Consider reducing concurrency or upgrading your account tier. See Top-up and Rate Limits.
  • 500 response: Try again later. If the issue persists, contact the support team at [email protected].