Começar
Quickstart
Do zero à sua primeira imagem em três passos: pegue uma chave, dispare uma geração e busque a URL do resultado.
1. Pegue uma chave
Entre no app em Conta → Apps & API e crie uma chave. Ela aparece uma única vez no formato ck_live_… — guarde em segredo. A API está em beta fechado: sua conta precisa estar habilitada (plano ativo). Deixe a chave numa variável de ambiente:
export CK=ck_live_xxxxxxxxxxxxxxxxxxxxxxxx
2. Dispare uma geração
Toda geração é um POST /generations. Envie o model (um slug de Modelos) e o prompt. A resposta volta imediatamente com status: "processing" — o job roda em segundo plano.
curl -X POST https://caranguejo.art/api/v1/dev/generations \
-H "Authorization: Bearer $CK" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2",
"prompt": "um caranguejo numa praia neon, cinematográfico",
"params": { "quality": "high", "resolution": "2K", "size": "3:2" }
}'
Resposta (job aceito, 201):
{
"data": {
"id": "9f0c1a7e-…",
"object": "generation",
"status": "processing",
"model": "gpt-image-2"
}
}
3. Acompanhe até completar
Faça polling em GET /generations/:id até o status virar completed (ou failed). Em produção, prefira um webhook a ficar consultando.
curl https://caranguejo.art/api/v1/dev/generations/9f0c1a7e-… \
-H "Authorization: Bearer $CK"
{
"data": {
"id": "9f0c1a7e-…",
"status": "completed",
"credits_charged": 40,
"output": {
"assets": [{ "url": "https://media.caranguejo.art/…/out.png", "type": "image" }],
"images": [{ "url": "https://media.caranguejo.art/…/out.png" }]
}
}
4. Use o resultado
A URL em output.assets[].url é permanente e pública (media.caranguejo.art) — sem expiração, sem assinatura. Baixe ou sirva direto. O custo real do job vem em credits_charged.
model e os campos. Veja Fazendo requisições.