Geração de imagens
Transforme uma descrição em texto (prompt) em imagens com os modelos de imagem do Google (família Nano Banana / Gemini Image). O endpoint é compatível com a OpenAI Images API — basta apontar o SDK openai para a base URL do Geraikita, com a mesma gk- key e o mesmo saldo de GeraiPoints.
Endpoint
https://ai.geraikita.com/v1/images/generations| Header | Valor |
|---|---|
| Authorization | Bearer gk-... (ou x-api-key: gk-...) |
| Content-Type | application/json |
Uma requisição = um prompt, que gera de 1 a 4 imagens. Streaming não é suportado — a resposta é enviada de uma vez quando as imagens ficam prontas.
Parâmetros do body
| Parâmetro | Tipo | Descrição |
|---|---|---|
model | stringobrigatório | ID do modelo de imagem, p. ex. gemini-3.1-flash-image ou gemini-3-pro-image — a lista completa está na tabela de preços abaixo. |
prompt | stringobrigatório | Descrição da imagem desejada, no máximo 4000 caracteres. |
n | integeropcional | Quantidade de imagens, 1–4. Padrão 1. Cada imagem bem-sucedida é cobrada separadamente. |
size | stringopcional | Um de auto | 1024x1024 | 1536x1024 | 1024x1536 | 1792x1024 | 1024x1792. Padrão auto: o modelo escolhe a proporção, geralmente paisagem 16:9 (cerca de 1376×768). O tamanho é apenas uma indicação de proporção — a resolução final fica a cargo do modelo. |
response_format | stringopcional | url (padrão) para um link da imagem, ou b64_json para os dados da imagem em base64 diretamente na resposta. |
Outros campos (p. ex. quality ou style) são ignorados.
Exemplos
curl https://ai.geraikita.com/v1/images/generations \
--max-time 300 \
-H "Authorization: Bearer gk-xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-3.1-flash-image",
"prompt": "Pôster promocional de um café gelado com açúcar de palma sobre uma mesa de madeira, luz quente da manhã, texto grande \"20% OFF\" no topo, estilo ilustração flat",
"n": 1,
"size": "1024x1024"
}'Exemplo de resposta
data traz um objeto por imagem bem-sucedida — url ou b64_json conforme response_format. Se algumas imagens falharem, pode haver menos objetos que n.
{
"created": 1793464057,
"data": [
{ "url": "https://api.geraikita.com/cdn/ai-gambar/2026/11/xxxxxxxxxxxx.jpg" }
]
}Cabeçalhos da resposta: X-Geraikita-Images = número de imagens bem-sucedidas, X-Geraikita-GP-Charged = GeraiPoints cobrados por essa requisição.
Preços
Modelos de imagem são cobrados por imagem gerada com sucesso — não por token. Os preços atuais (sujeitos a alteração) estão na tabela abaixo e na página de preços.
Não foi possível carregar os preços dos modelos de imagem agora — veja a página de preços.
- Imagens que falham não são cobradas, assim como requisições rejeitadas (parâmetros inválidos ou violação da política de conteúdo).
- Seu saldo de GeraiPoints precisa cobrir
n× o preço por imagem antes de a requisição ser processada; caso contrário, a resposta é402. - Modelos de imagem não estão incluídos no Unlimited plan, no Bansos (nível gratuito) nem em outras cotas gratuitas — são sempre descontados do saldo de GeraiPoints.
- Cada imagem aparece como uma linha no histórico de uso do dashboard, com o rótulo Imagem.
Códigos de erro
Os erros seguem o formato da OpenAI: um objeto error com message, type, param e code.
| Status | type / code | Significado |
|---|---|---|
| 400 | invalid_request_error | Parâmetro inválido (p. ex. n fora de 1–4, size desconhecido, prompt vazio ou longo demais). Não é cobrado. |
| 400 | content_policy_violation | O prompt viola a política de conteúdo (veja abaixo). Não é cobrado. |
| 401 | — | API key ausente ou inválida. |
| 402 | insufficient_quota | GeraiPoints insuficientes para a quantidade de imagens pedida — recarregue, por favor. |
| 403 | — | Este modelo não é permitido para essa API key — adicione-o à lista de modelos da key no dashboard. |
| 404 | model_not_found | Modelo desconhecido ou que não é de imagem. |
| 429 | rate_limit_exceeded | Requisições demais — o limite é de 10 requisições/minuto por key. Aguarde o tempo indicado no cabeçalho Retry-After. |
| 502 | image_generation_failed | A geração da imagem falhou no servidor. Não é cobrado — tente novamente. |
{
"error": {
"message": "...",
"type": "...",
"param": "...",
"code": "..."
}
}Chamar um modelo de imagem por /v1/chat/completions retorna 400 com indicação deste endpoint — use /v1/images/generations.
Dicas de prompt
- Os prompts podem ser escritos em português, inglês, indonésio ou outros idiomas.
- O modelo consegue escrever texto dentro da imagem — coloque o texto exato entre aspas, p. ex.
o texto "20% OFF". - Descreva o assunto, o cenário, o estilo (foto, ilustração flat, 3D, aquarela), a iluminação e a composição — quanto mais específico, mais fiel o resultado.
- Escolha
sizeconforme o uso:1024x1024para o feed,1024x1792para stories/retrato,1792x1024para banners em paisagem. - Precisa de várias variações? Use
naté 4 numa só requisição — lembre que cada imagem bem-sucedida é cobrada.
Política de conteúdo
As seguintes requisições são rejeitadas:
- Conteúdo sexual ou explícito.
- Conteúdo que explore ou coloque crianças em perigo.
- Violência sádica ou gore.
- Figuras políticas reais ou figuras públicas reais.
As rejeições retornam 400 com o código content_policy_violation e não são cobradas.
Links das imagens e armazenamento
data[].url é pública — qualquer pessoa com o link pode abrir a imagem — e não há garantia de que fique disponível para sempre. Baixe e guarde uma cópia no seu próprio armazenamento logo após a geração, ou peça b64_json para receber os dados da imagem diretamente na resposta.