documentação

API

Compatível com a API da OpenAI: qualquer SDK ou ferramenta que fala com a OpenAI funciona trocando o endereço e a chave. As chaves são liberadas para quem entra no beta.

Endereço basehttps://api.nofluffbr.com/v1
ModelosAnunciados no lançamento; a lista sai em GET /v1/models
AutenticaçãoCabeçalho Authorization: Bearer sk-…

Python (SDK oficial da OpenAI)

from openai import OpenAI

client = OpenAI(base_url="https://api.nofluffbr.com/v1", api_key="sk-sua-chave")
r = client.chat.completions.create(
    model="nome-do-modelo",
    messages=[{"role": "user", "content": "Explique o que é uma API em 2 frases."}],
)
print(r.choices[0].message.content)

Streaming (stream=True) e chamada de ferramentas (tools=[…]) funcionam.

curl

curl https://api.nofluffbr.com/v1/chat/completions \
  -H "Authorization: Bearer sk-sua-chave" \
  -H "Content-Type: application/json" \
  -d '{"model": "nome-do-modelo", "messages": [{"role": "user", "content": "Oi"}]}'

Agentes de programação

Ferramentas como o OpenCode funcionam com o provedor "compatível com OpenAI", apontando para o endereço base acima. Atenção ao custo: agentes reenviam um contexto grande a cada passo, e uma pergunta simples pode consumir dezenas de milhares de tokens de entrada.

Rotas

Só existem POST /v1/chat/completions e GET /v1/models. As demais rotas da API da OpenAI (completions, responses, embeddings, arquivos) respondem 404.

Limites

Erros

HTTPQuando
400Conteúdo proibido pela política de uso, ou conversa maior que o contexto do modelo
401Chave inválida ou revogada
402Saldo esgotado
429Mais requisições que o limite
502 / 503Modelo ou filtro temporariamente fora do ar (não é cobrado)

As mensagens de erro vêm em português, no campo error.message.