Nano Banana Text to Image API
Get API Keynano-banana-text-to-image
Create Task
POST https://aigptimage.com/api/v1/jobs/createTask
Authorization: Bearer YOUR_API_KEY
Content-Type: application/jsonInput Parameters
| Field | Type | Required | Description |
|---|---|---|---|
prompt | string | Yes | Text description of the image to generate. Max 20000 characters |
image_size | string | No | Output ratio. Options: 1:1, 9:16, 16:9, 3:4, 4:3, 3:2, 2:3, 5:4, 4:5, 21:9, auto. Default: 1:1 |
aspect_ratio | string | No | Alias for image_size |
output_format | string | No | png or jpeg. Default: png |
nsfw_checker | boolean | No | Whether to enable provider safety checking. Default: true |
Request Example
{
"model": "nano-banana-text-to-image",
"input": {
"prompt": "A surreal painting of a giant banana floating in space, stars and galaxies in the background, vibrant colors, digital art",
"image_size": "1:1",
"output_format": "png"
}
}Create Response
{
"code": 200,
"msg": "success",
"data": {
"taskId": "task_xxxxxxxxxxxxx"
}
}Save data.taskId; you need it to query the result.
Query Task
GET https://aigptimage.com/api/v1/jobs/recordInfo?taskId=task_xxxxxxxxxxxxx
Authorization: Bearer YOUR_API_KEYWhen data.state is success, parse data.resultJson as JSON and read resultUrls.
{
"code": 200,
"msg": "success",
"data": {
"taskId": "task_xxxxxxxxxxxxx",
"model": "nano-banana-text-to-image",
"state": "success",
"param": "{\"model\":\"nano-banana-text-to-image\",\"input\":{\"prompt\":\"A surreal painting of a giant banana floating in space, stars and galaxies in the background, vibrant colors, digital art\",\"image_size\":\"1:1\",\"output_format\":\"png\"}}",
"resultJson": "{\"resultUrls\":[\"https://cdn.example.com/result.png\"]}",
"failCode": null,
"failMsg": null,
"costTime": 12000,
"completeTime": 1757584176490,
"createTime": 1757584164490
}
}Error Codes
| Status Code | Description |
|---|---|
400 | Invalid request parameters |
401 | Authentication failed or API key is invalid |
402 | Insufficient credits |
404 | Task not found |
409 | Active task limit exceeded or request conflict |
422 | Parameter validation failed |
429 | Request rate limit exceeded |
500 | Internal server error |