HowToFixHowToFix

Docs

Handbook · updated 25 Sep 2026

Everything you need to get a key and make your first call. One dashboard, one API base URL.

1. Two hosts

HostUse it for
https://howtofix.idAccount, tokens, balance, usage logs, these pages
https://api.howtofix.id/v1API calls (OpenAI-compatible). howtofix.id/v1 is not an API host and returns 404.

2. Create an account

  1. Open Sign up and choose a username and password.
  2. Press Continue with Google to attach a Gmail address. Only @gmail.com addresses are accepted, and each Gmail can open one HowToFix account.
  3. Solve the human check: a quick slider challenge — line the piece up with its matching gap. You can switch challenge types inside the widget, and your browser runs a short proof-of-work in the background.
  4. Press Create account, then sign in.

If the check says the page is out of date, reload the page. If it says to wait 15 minutes, too many attempts came from your network; try again later.

3. Get a key

  1. Sign in and open Console.
  2. Go to Tokens and create a token. It starts with sk-.
  3. Keep it secret. If it leaks, delete it in the console and create a new one.

4. Call the API

curl

curl https://api.howtofix.id/v1/models \
  -H "Authorization: Bearer sk-YOUR-TOKEN"
curl https://api.howtofix.id/v1/chat/completions \
  -H "Authorization: Bearer sk-YOUR-TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"model":"MODEL_ID","messages":[{"role":"user","content":"hello"}]}'

OpenAI SDK (Python)

from openai import OpenAI

client = OpenAI(base_url="https://api.howtofix.id/v1", api_key="sk-YOUR-TOKEN")
reply = client.chat.completions.create(
    model="MODEL_ID",
    messages=[{"role": "user", "content": "hello"}],
)
print(reply.choices[0].message.content)

Pick MODEL_ID from Model Square or from GET /v1/models. Any OpenAI-compatible client works with base URL https://api.howtofix.id/v1.

5. Endpoints

MethodPathNotes
GET/v1/modelsModels your token may call
POST/v1/chat/completionsChat, streaming supported
POST/v1/completionsLegacy text completions
POST/v1/messagesAnthropic-compatible shape, for models that support it
GET/v1beta/modelsGemini-compatible list, for models that support it

6. Balance and usage

Every call is metered against your balance. The console shows your remaining balance, per-token limits and a log of each request with model, tokens and cost. Prices per model are listed in Model Square.

7. Errors

CodeMeaning
401Missing or invalid token
403Token not allowed for that model, or sign-up attempted without the Gmail step or human check
404Wrong host: API calls go to api.howtofix.id, not howtofix.id
409Sign-up: that Gmail already has an account. Sign in instead.
429Rate limit, or the daily sign-up limit for your network
5xxUpstream model provider failed or timed out; retry later