# How reAPI works

reAPI is a model-name rewriting proxy. It sits between your client and your upstream AI provider, translating the model names your client sends into the model names your provider understands.

## The problem it solves

Claude Desktop and the Claude for Office add-in validate model names against a claude-* pattern. They will only send requests for models named claude-something. If you want to use a different provider — DeepSeek, Qwen, or any Anthropic-compatible API — you can't just change the model name in the client. reAPI accepts the claude-* name your client sends and rewrites it to whatever upstream model you've configured.

## The rewrite mechanic

Your client sends a request with model: claude-opus-4-5. reAPI looks up your mapping for that name, finds the upstream URL and model you configured, rewrites the model field, and forwards the request. The upstream responds; reAPI streams the response back to your client unchanged. Your client never knows the model name was rewritten.

## Short codes as identity

There is no account, no username, no password. Your short code is your identity. It's an 8-character string issued when you create a code. It appears in your BYOK base URL and is used as the API key in Hosted mode. Save it — if you lose it, it can't be recovered.

## Common questions

### Q.01 Does reAPI ever see my prompts or responses?

No. Request and response bodies are forwarded upstream and streamed back to your client. reAPI logs only metadata — model name, token counts, timestamps — and never persists prompt or response content.

### Q.02 Which clients work with reAPI?

Any client that speaks the Anthropic API protocol. Claude Desktop and the Claude for Office add-in are the two with screenshot-level setup guides. Any other Anthropic-compatible client works the same way.

### Q.03 Is the short code permanent?

The code itself doesn't expire, but your access depends on your mode. Your key mode requires an active subscription or PAYG enabled. Hosted mode requires a wallet balance. If neither condition is met, requests are rejected — but the code and your mappings are preserved. Top up or subscribe to resume.
