# Migração da OpenAI e da Anthropic

> Leve o código que você já tem para a NotHoly trocando a URL base, a chave e o ID do modelo.


| Você usa | Troque |
|---|---|
| SDK da OpenAI | `base_url="https://api.notholy.com/v1"`, `api_key=NOTHOLY_API_KEY`, `model="notholy-specter"` |
| SDK da Anthropic | `base_url="https://api.notholy.com"`, `api_key=NOTHOLY_API_KEY`, `model="notholy-specter"` |
| HTTP direto | Os mesmos caminhos sob `https://api.notholy.com/v1` |

```bash test
curl https://api.notholy.com/v1/chat/completions \
  -H "Authorization: Bearer $NOTHOLY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "notholy-specter", "messages": [{"role": "user", "content": "ping"}]}'
```

## O que se comporta diferente

- O Responses não guarda estado. `previous_response_id` retorna 400.
- `cache_control` é ignorado. O cache é automático.
- Fontes `document` de PDF no Messages retornam 400.
- Ferramentas de servidor não são executadas. Só as suas ferramentas function.
- `n` precisa ser 1.
- Ainda não há modelo de embedding.
- Não existem endpoints de batch, fine-tuning, assistants, áudio nem geração de imagem.

## Próximos passos

- [SDKs](/pt-br/getting-started/sdks)
