API
API
Nano Banana 2.1 API
ImagemA API do Nano Banana 2.1 oferece imagens mais nítidas e edição mais precisa. Crie imagens a partir de prompts de texto ou edite imagens de referência, com proporções flexíveis e resultados de até 4K. Integre a API para adicionar geração e edição de imagens de alta qualidade ao seu aplicativo.
Corpo
application/jsonmodelstringobrigatórionano-banana-2-1input.promptstringobrigatórioDescreva a imagem que deseja criar ou as alterações que deseja fazer nas imagens de referência. Espaços em branco excedentes são removidos.
input.imagesstring[]opcionalURLs opcionais de imagens de referência. Use apenas URLs HTTPS publicamente acessíveis. Omita este campo para gerar imagens a partir de texto.
input.aspect_ratiostringopcionalProporção entre largura e altura da saída. Auto permite que o modelo escolha.
Padrão: auto
input.resolutionstringopcionalNível de resolução da imagem gerada. Use os valores em letras minúsculas 1k, 2k ou 4k. Se o campo for omitido ou deixado vazio, o padrão será 2k.
Padrão: 2k
Exemplos de requisição
POST /api/v1/createcurl -X POST https://nanobanana.io/api/v1/create \
-H "Authorization: Bearer sk_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"model": "nano-banana-2-1",
"input": {
"prompt": "Uma foto de produto cinematográfica de uma câmera futurista em formato de banana",
"aspect_ratio": "1:1",
"resolution": "2k"
}
}'POST /api/v1/create · HTTP 201{
"data": {
"task_id": "task_example",
"model": "nano-banana-2-1",
"status": "processing",
"credits": 20
}
}Consulte este endpoint usando o ID da tarefa retornado até que a tarefa seja concluída ou falhe. Recomendamos consultar a cada 5 segundos para verificar o status mais recente.
POST /api/v1/check{
"task_id": "task_example"
}Resposta
Status da tarefa retornado por POST /api/v1/check. Os IDs, URLs e horários abaixo são ilustrativos.
idstringobrigatórioIdentificador da tarefa em data.id, igual ao task_id enviado na consulta.
statusstringobrigatóriofailed_reasonstringopcionalRetornado somente quando status é failed, para explicar a falha. O campo é omitido em completed e processing.
Concluída · completed
Os URLs de download estão em data.data.results.
POST /api/v1/check · HTTP 200{
"data": {
"id": "task_example",
"created_at": 1791244800,
"model": "nano-banana-2-1",
"status": "completed",
"data": {
"results": [
"https://example.com/generated.png"
],
"processing_time": 18
}
}
}Outros status
Em processing ou failed, data.data é null. Este exemplo mostra failed: somente failed inclui failed_reason. Continue consultando em processing; pare em failed.
POST /api/v1/check · HTTP 200{
"data": {
"id": "task_example",
"created_at": 1791244800,
"model": "nano-banana-2-1",
"status": "failed",
"data": null,
"failed_reason": "Generation failed."
}
}Consumo de créditos
Créditos consumidos por uma solicitação que gera uma imagem.
| Resolução | 1K | 2K | 4K |
|---|---|---|---|
| Uma imagem | 12 | 20 | 30 |
Sem parâmetros opcionais: 12 créditos
Envie explicitamente os parâmetros input indicados para usar a tarifa correspondente. Solicitações que geram várias imagens podem consumir mais créditos.
O campo credits retornado por POST /api/v1/create mostra os créditos cobrados pela tarefa.
