Перейти к основному содержанию
Основная функция API Nano Banana Tasks заключается в том, чтобы запрашивать статус выполнения задачи, используя идентификатор задачи, сгенерированный API Nano Banana Images. В этом документе подробно описывается интеграция API Nano Banana Tasks, чтобы помочь вам легко интегрировать и в полной мере использовать мощные функции этого API. С помощью API Nano Banana Tasks вы можете легко реализовать запрос статуса выполнения задач API Nano Banana Images.

Пример запроса

API Nano Banana Tasks можно использовать для запроса результатов API Nano Banana Images. Для получения информации о том, как использовать API Nano Banana Images, обратитесь к документации Nano Banana Images API. Мы возьмем в качестве примера идентификатор задачи, возвращенный сервисом API Nano Banana Images, и продемонстрируем, как использовать этот API. Предположим, у нас есть идентификатор задачи: 4d320ead-4af4-4a55-8f3e-f2afebdf4fd0, далее мы покажем, как передать этот идентификатор задачи.

Пример задачи

Установка заголовков запроса и тела запроса

Request Headers включает в себя:
  • accept: указывает на прием ответа в формате JSON, здесь указывается application/json.
  • authorization: ключ для вызова API, который можно выбрать из выпадающего списка после запроса.
Request Body включает в себя:
  • id: загруженный идентификатор задачи.
  • action: способ выполнения операции над задачей.
Настройка показана на следующем изображении:

Пример кода

Можно заметить, что на правой стороне страницы автоматически сгенерирован код на различных языках, как показано на изображении:

Некоторые примеры кода приведены ниже:

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)

Пример ответа

После успешного запроса API вернет информацию о деталях этой задачи. Например:
{
  "_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,
  "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"
      }
    ]
  }
}
Возвращаемый результат содержит несколько полей, поле request — это тело запроса, отправленного для создания задачи, в то время как поле response — это тело ответа, возвращенное после завершения задачи. Описание полей следующее.
  • id: идентификатор, сгенерированный для этой задачи, используется для уникальной идентификации данной задачи.
  • request: информация о запросе в задаче.
  • response: информация о возвращаемом ответе в задаче.

Пакетный запрос

Это запрос для получения деталей нескольких идентификаторов задач, в отличие от вышеописанного, здесь необходимо выбрать action как retrieve_batch. Request Body включает в себя:
  • ids: массив загруженных идентификаторов задач.
  • action: способ выполнения операции над задачей.
Пример приведен ниже:
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"
}'

Пример ответа

После успешного запроса API вернет конкретную информацию о всех пакетных задачах. Например:
{
  "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,
      "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
}
Возвращаемый результат содержит несколько полей, среди которых items включает в себя конкретную информацию о пакетных задачах, каждая задача имеет такую же структуру, как и возвращаемый результат для одиночной задачи. Информация о полях следующая.
  • items: все конкретные детали пакетных задач. Это массив, каждый элемент которого имеет такую же структуру, как и возвращаемый результат для одиночной задачи.
  • count: количество задач в данном пакетном запросе.

Обработка ошибок

При вызове API, если возникает ошибка, API возвращает соответствующий код ошибки и информацию. Например:
  • 400 token_mismatched:Неверный запрос, возможно, из-за отсутствующих или недействительных параметров.
  • 400 api_not_implemented:Неверный запрос, возможно, из-за отсутствующих или недействительных параметров.
  • 401 invalid_token:Неавторизован, недействительный или отсутствующий токен авторизации.
  • 429 too_many_requests:Слишком много запросов, вы превысили лимит частоты.
  • 500 api_error:Внутренняя ошибка сервера, что-то пошло не так на сервере.

Пример ответа об ошибке

{
  "success": false,
  "error": {
    "code": "api_error",
    "message": "fetch failed"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}

Заключение

С помощью этого документа вы узнали, как использовать API Nano Banana Tasks для запроса информации о единичных или пакетных задачах. Надеемся, что этот документ поможет вам лучше интегрировать и использовать данный API. Если у вас есть какие-либо вопросы, пожалуйста, не стесняйтесь обращаться в нашу техническую поддержку.