Nano Banana Tasks API Integration and Usage
The main function of the Nano Banana Tasks API is to query the execution status of a task by inputting the task ID generated by the Nano Banana Images API.
This document will provide detailed integration instructions for the Nano Banana Tasks API, helping you easily integrate and fully utilize the powerful features of this API. With the Nano Banana Tasks API, you can easily query the execution status of tasks from the Nano Banana Images API.
¶ Request Example
The Nano Banana Tasks API can be used to query the results of the Nano Banana Images API. For information on how to use the Nano Banana Images API, please refer to the documentation Nano Banana Images API.
We will take a task ID returned by the Nano Banana Images API as an example to demonstrate how to use this API. Suppose we have a task ID: 4d320ead-4af4-4a55-8f3e-f2afebdf4fd0, and we will demonstrate how to pass in a task ID.
¶ Task Example Image

¶ Setting Request Headers and Request Body
Request Headers include:
accept: Specifies that the response should be in JSON format, set toapplication/json.authorization: The key to call the API, which can be selected directly after application.
Request Body includes:
id: The uploaded task ID.action: The operation method for the task.
Set as shown in the image below:

¶ Code Example
It can be seen that various language codes have been automatically generated on the right side of the page, as shown in the image:

Some code examples are as follows:
¶ CURL
curl -X POST 'https://api.acedata.cloud/nano-banana/tasks' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
"id": "4d320ead-4af4-4a55-8f3e-f2afebdf4fd0",
"action": "retrieve"
}'
¶ Python
import requests
url = "https://api.acedata.cloud/nano-banana/tasks"
headers = {
"accept": "application/json",
"authorization": "Bearer {token}",
"content-type": "application/json"
}
payload = {
"id": "4d320ead-4af4-4a55-8f3e-f2afebdf4fd0",
"action": "retrieve"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)
¶ Response Example
Upon successful request, the API will return the details of the task here. For example:
{
"_id": "68bc7c3c550a4144a53d0e24",
"id": "4d320ead-4af4-4a55-8f3e-f2afebdf4fd0",
"api_id": "9d8a117e-31ca-4322-a0fd-1771296ec610",
"application_id": "8afd681a-2a4e-4265-aecb-43970094c019",
"created_at": 1757183036.787,
"started_at": 1757183036.847,
"finished_at": 1757183048.147,
"elapsed": 11.3,
"credential_id": "097b2987-62f4-4ac0-b0cc-aed41e372a07",
"request": {
"action": "generate",
"prompt": "a white siamese cat"
},
"trace_id": "7ba1f1e8-0ef8-450d-8bb2-b5c3bf1ea319",
"type": "images",
"user_id": "b87f67c1-b04f-4332-99a1-7a5e651331c6",
"response": {
"success": true,
"task_id": "4d320ead-4af4-4a55-8f3e-f2afebdf4fd0",
"trace_id": "7ba1f1e8-0ef8-450d-8bb2-b5c3bf1ea319",
"data": [
{
"prompt": "a white siamese cat",
"image_url": "https://platform.cdn.acedata.cloud/nanobanana/7e7bd000-698a-4e14-bb2d-3db61237e4bb.png"
}
]
}
}
The returned result contains multiple fields, the request field is the request body when the task was initiated, while the response field is the response body returned after the task is completed. The field descriptions are as follows.
id: The ID of the generated task, used to uniquely identify this generation task.request: The request information in the task query.response: The return information in the task query.created_at: The task creation time, Unix timestamp (seconds, float).started_at: The task execution start time, Unix timestamp (seconds, float).finished_at: The task completion time, Unix timestamp (seconds, float). This field is not returned if the task is not completed.elapsed: The time taken for task execution, in seconds (float, rounded to 3 decimal places). This field is not returned if the task is not completed.
¶ Batch Query Operation
This is for querying task details for multiple task IDs, and unlike the above, the action needs to be selected as retrieve_batch.
Request Body includes:
ids: An array of uploaded task IDs.action: The operation method for the task.
Example as follows:
curl -X POST 'https://api.acedata.cloud/nano-banana/tasks' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
"ids": ["1ebe4f2b-59ba-4385-a4ea-0ce8a3fe12ed","1ebe4f2b-59ba-4385-a4ea-0ce8a3fe12ed"],
"action": "retrieve_batch"
}'
¶ Response Example
Upon successful request, the API will return the specific details of all batch tasks this time. For example:
{
"items": [
{
"_id": "68bc7c3c550a4144a53d0e24",
"id": "4d320ead-4af4-4a55-8f3e-f2afebdf4fd0",
"api_id": "9d8a117e-31ca-4322-a0fd-1771296ec610",
"application_id": "8afd681a-2a4e-4265-aecb-43970094c019",
"created_at": 1757183036.787,
"started_at": 1757183036.847,
"finished_at": 1757183048.147,
"elapsed": 11.3,
"credential_id": "097b2987-62f4-4ac0-b0cc-aed41e372a07",
"request": {
"action": "generate",
"prompt": "a white siamese cat"
},
"trace_id": "7ba1f1e8-0ef8-450d-8bb2-b5c3bf1ea319",
"type": "images",
"user_id": "b87f67c1-b04f-4332-99a1-7a5e651331c6",
"response": {
"success": true,
"task_id": "4d320ead-4af4-4a55-8f3e-f2afebdf4fd0",
"trace_id": "7ba1f1e8-0ef8-450d-8bb2-b5c3bf1ea319",
"data": [
{
"prompt": "a white siamese cat",
"image_url": "https://platform.cdn.acedata.cloud/nanobanana/7e7bd000-698a-4e14-bb2d-3db61237e4bb.png"
}
]
}
}
],
"count": 1
}
The return result contains multiple fields, among which items include the specific details of batch tasks, and the specific information of each task is the same as the fields above.
items, all specific detail information of batch tasks. It is an array, and each element of the array has the same format as the return result of querying a single task above.count, the number of batch query tasks here.
¶ Error Handling
When calling the API, if an error occurs, the API will return the corresponding error code and message. For example:
400 token_mismatched: Bad request, possibly due to missing or invalid parameters.400 api_not_implemented: Bad request, possibly due to missing or invalid parameters.401 invalid_token: Unauthorized, invalid or missing authorization token.429 too_many_requests: Too many requests, you have exceeded the rate limit.500 api_error: Internal server error, something went wrong on the server.
¶ Error Response Example
{
"success": false,
"error": {
"code": "api_error",
"message": "fetch failed"
},
"trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}
¶ Conclusion
Through this document, you have learned how to use the Nano Banana Tasks API to query all specific detail information of single or batch tasks. We hope this document can help you better integrate and use this API. If you have any questions, please feel free to contact our technical support team.