Skip to content

Troubleshooting

Start with the symptom you see. Each fix keeps API-credit and token-budget routes separate.

Start here

Gateway unreachable or timed out

Do not copy a URL from another key or client. Native Anthropic clients append /v1/messages themselves, while OpenAI-compatible clients expect a base URL ending in /v1.

Start with the key you bought

Choose one billing path

Your choice is remembered across the documentation. Then select the card that matches your client protocol.

For a key funded with a dollar credit balance.

OpenAI-compatible Chat Completions or Responses

Use with: Codex, OpenCode, Cursor, Roo Code, SDKs, and direct HTTP

Base URL to enter

https://api.yourdomain.example/v1

Native Anthropic Messages

Use with: Claude Code, Claude Desktop, and native Messages clients

Base URL to enter

https://api.yourdomain.example

The protocol decides whether the client field ends in /v1. OpenAI-compatible clients use a base URL ending in /v1. Native Anthropic clients use the origin only, without /v1, because they append /v1/messages themselves. A Claude token key therefore reaches /token/v1/messages when the native client builds its request.

Use the key's matching billing surface and only models returned by its authenticated catalog. A Claude token key and an OpenAI token key are provider-scoped; neither can be swapped onto the other's models.

Claude Desktop is a native Anthropic client with its own third-party inference settings. Follow the Claude Desktop guide; it does not read Claude Code's configuration.

  1. Choose API Credit or Token Budget in the selector above.
  2. Copy the URL for the protocol your client uses.
  3. Keep the credential kind set to a static API key and use the Bearer authentication scheme when the client asks.
  4. Save the settings, restart the client, and run the local check:
bash
cloudservice doctor

Claude Desktop has separate third-party inference settings and does not read Claude Code configuration. Follow the Claude Desktop guide.

Models load, but a request fails

Successful model discovery proves that the endpoint can authenticate the key. Inference can still fail if the chosen model is outside that key's scope, the key lacks available balance, or the request has an invalid field. In Roo Code and Cline, enter the rawak_live_… value only. Do not add a customAuthorization or x-api-keyheader: the client creates its own Bearer header, and a stored override can make discovery succeed while inference fails.

  1. Fetch the authenticated model list and copy an exact model ID:
bash
cloudservice models
  1. Check the dashboard for remaining credit or tokens and any temporary balance reservation from another in-flight request.
  2. Expand the client's provider error and look up its machine-readable code in Error Codes.
  3. If support is required, share the X-Request-Id, model ID, timestamp, and status code. Never share the full API key.

Model unavailable

If the client says the selected model is unsupported or temporarily unavailable, choose only a model returned by the live command above. The list is filtered to the active key's provider scope.

429 or temporary balance reservation

Honor Retry-After and let the current request finish before retrying. Do not start several parallel retries. If the error is exhausted quota rather than a temporary reservation, top up the same key first.

“fetch failed” in the CLI

bash
cloudservice doctor
  • Confirm the computer date, time, and time zone are correct.
  • Temporarily test without a VPN or HTTPS-inspecting proxy if your organization permits it.
  • Confirm a firewall or security product is not blocking api.yourdomain.example.
  • Run cloudservice login again only if the doctor reports that the stored key is missing or invalid.

A browser being online does not prove that a terminal or desktop app can reach the same TLS endpoint through its own proxy settings.

Invalid or expired key

A 401 invalid_credentials means the credential is missing, malformed, revoked, or being sent to the wrong billing surface. Re-authenticate locally:

bash
cloudservice login
cloudservice doctor

If the key was lost, use the customer dashboard's key replacement flow. It revokes the old secret and transfers the remaining entitlement to the replacement.

Payment, coupon, or redeem problem

  • Payment pending: keep the private return page and wait for confirmation. Do not pay the same invoice again.
  • Coupon rejected: confirm the selected gateway, active dates, and your allowed use count.
  • Redeem code rejected: select an active paid standard OpenAI, Claude, or combined key. Trial, DeepSeek, and other exact-model keys are not eligible.
  • Low balance:use the dashboard's top-up action to add credit or compatible tokens to the same key.

See Billing, coupons, and redeem codes for the complete checkout and recovery flow. Contact CloudService support with the CloudService order ID if a confirmed payment still shows Needs review.