Skip to main content
Depends on the protocol:
  • OpenAI protocol: include /v1https://www.fortapi.com/v1.
  • Anthropic SDK: ANTHROPIC_BASE_URL does not include /v1https://www.fortapi.com. The SDK appends /v1/messages itself; adding /v1 causes a 404.
  • You must use a FortAPI token (sk-...), not an OpenAI / Anthropic key.
  • Check for stray whitespace or line breaks.
  • In the console under Tokens, confirm the key isn’t disabled or expired.
  • See Errors.
  • The model name is misspelled or isn’t on the main site’s Pricing page. Verify and re-enter it.
  • It can also be a wrong base_url (see the /v1 question above).
Your account balance is used up (it’s 403, not 402). Check the balance on the console home page and top up to resume. It can also mean the token is disabled or the group has no access to that model. See Billing & quota.
Just change the model field in your request. The same key can call OpenAI / Claude / Gemini / Grok and more — FortAPI converts the protocol automatically. Available model names are on the main site’s Pricing page.
Yes. Go back to the Tokens page in the console and click the eye icon on that token to reveal it, or use “Copy key” to copy the full key.
  • Make sure you pass stream: true and consume it with your SDK’s streaming iterator (see the streaming example in the API Reference).
  • If parsing raw SSE, note each line starts with data: and ends with data: [DONE].
  • Response buffering in a client/proxy can make streaming look “stuck” — disable buffering.
You’re being rate limited. Retry with exponential backoff rather than hammering. See Rate limits.
Both are supported and work with the same key. Use the OpenAI protocol for existing OpenAI / LangChain code; use the Claude protocol when you need Claude-native features like thinking blocks. See the comparison table in the API Reference.
Still stuck? Email support@fortapi.com — including the request id from the error helps us locate it faster.