Przejdź do głównej treści
Ten dokument przedstawia integrację i użycie API Nano Banana Images. Interfejs obsługuje dwie funkcje: generowanie obrazów (generate) oraz edycję obrazów (edit).

Proces aplikacji

Aby korzystać z API Nano Banana Images, najpierw przejdź do konsoli Ace Data Cloud, aby uzyskać swój API Token i zachować go do późniejszego użycia. Jeśli nie jesteś jeszcze zalogowany lub zarejestrowany, zostaniesz automatycznie przekierowany na stronę logowania, która zaprosi Cię do rejestracji i zalogowania się, a po zakończeniu automatycznie wrócisz na bieżącą stronę. Jeden API Token umożliwia wywoływanie wszystkich usług platformy, bez konieczności składania osobnego wniosku dla każdej usługi. Przy pierwszym wniosku otrzymasz darmowy limit, który pozwoli na bezpłatne wypróbowanie usługi; gdy limit będzie niewystarczający, możesz doładować wspólne saldo w konsoli.
📘 Pełna dokumentacja: Nano Banana Images API →

Przegląd interfejsu

  • Base URL:https://api.acedata.cloud
  • Endpoint:POST /nano-banana/images
  • Metoda uwierzytelniania:przekazanie authorization: Bearer {token} w nagłówku HTTP
  • Nagłówki żądania:
    • accept: application/json
    • content-type: application/json
  • Akcje (action):
    • generate:generowanie obrazu na podstawie tekstowego polecenia
    • edit:edycja na podstawie podanego obrazu
  • Modele (model)(opcjonalne):
    • nano-banana(domyślny):oparty na Gemini 2.5 Flash Image, szybki i tani
    • nano-banana-2-lite:oparty na Gemini 3.1 Flash Lite Image, obsługuje wyłącznie 1K, szybkie generowanie
    • nano-banana-2:oparty na Gemini 3.1 Flash Image Preview, jakość klasy Pro + szybkość Flash
    • nano-banana-2.1:nowa generacja wydajnego modelu obrazowego, obsługuje generowanie i edycję obrazów 1K, 2K oraz 4K
    • nano-banana-pro:oparty na Gemini 3 Pro Image Preview, najwyższa jakość
    • nano-banana:official、nano-banana-2-lite:official、nano-banana-2:official、nano-banana-pro:official:oficjalne wersje kanałów odpowiadających modeli, oferujące lepszą jakość obrazu i stabilność, z innym rozliczaniem
  • Asynchroniczne wywołanie zwrotne:opcjonalne, odbieranie powiadomień o ukończeniu zadania i wyników przez callback_url
  • Liczba obrazów:opcjonalna, określ 1–4 obrazów przez count, domyślnie 1 obraz; każdy obraz jest tworzony przez niezależne wywołanie generowania; zwykłe błędy techniczne lub odmowa bezpieczeństwa dostawcy wpływają tylko na odpowiednie wywołanie, a pozostałe pomyślnie utworzone obrazy są zwracane normalnie i rozliczane według faktycznej liczby pomyślnie utworzonych obrazów

Szybki start: generowanie obrazu(action=generate)

Minimalne wymagane parametry:action、prompt Gdy chcesz tylko bezpośrednio wygenerować obraz na podstawie polecenia, ustaw action na generate i podaj jasny prompt.

Przykład żądania(cURL)

Przykład żądania(Python)

Przykład pomyślnej odpowiedzi

Opis pól

  • success:czy to żądanie zakończyło się powodzeniem.
  • task_id:ID zadania.
  • trace_id:ID śledzenia przepływu, ułatwiające diagnozowanie problemów.
  • count:liczba obrazów do wygenerowania lub edycji w żądaniu, obsługuje 1–4, domyślnie 1. data zawiera wyłącznie pomyślnie wygenerowane obrazy, a rozliczenie odbywa się według faktycznie zwróconej liczby obrazów. Każde wywołanie generowania obowiązkowo wykorzystuje natywną politykę bezpieczeństwa dostawcy; odrzucenie jednego wywołania nie wpływa na inne pomyślne wywołania, a jeśli wszystkie wywołania zostaną odrzucone, zwracany jest kod 403.
  • data[]:lista wyników.
    • prompt:polecenie użyte do generowania(zwracane ponownie)。
    • image_url:bezpośredni URL wygenerowanego obrazu.
Uwaga: /nano-banana/images wymaga jedynie action i prompt, aby wygenerować obraz

Edycja obrazu(action=edit)

Gdy chcesz edytować istniejący obraz, ustaw action na edit, przekaż przez image_urls listę linków do obrazów przeznaczonych do edycji(jeden lub więcej obrazów)oraz podaj prompt opisujący cel edycji. Na przykład tutaj udostępniamy jedno zdjęcie osoby i jedno zdjęcie ubrania, aby osoba założyła to ubranie, można jednocześnie przekazać linki do obrazów i określić action jako edit; URL może być publicznie dostępnym linkiem HTTP z protokołem https lub http, może również być obrazem zakodowanym w Base64, takim jak data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAVGCAMAAAA6u2FyAAADAFBMVEXq6uwdHCEeHyMdHS....

Przykład żądania(cURL)

Przykład żądania (Python)

Przykład pomyślnej odpowiedzi

Opis pól

  • image_urls[]: Lista adresów URL obrazów do edycji (musi być dostępna publicznie). Można przekazać wiele obrazów, a usługa połączy te materiały z prompt, aby wykonać edycję.
  • Pozostałe pola są takie same jak w odpowiedzi „Generowanie obrazu”.

Asynchroniczne wywołanie zwrotne (opcjonalne, zalecane)

Generowanie lub edycja mogą wymagać pewnego czasu. Aby uniknąć zajmowania zasobów przez długotrwałe połączenia, zaleca się użycie wywołania zwrotnego Webhook za pośrednictwem callback_url:
  1. Dodaj callback_url w treści żądania, na przykład adres Webhook Twojego serwera (musi być dostępny publicznie i obsługiwać POST JSON).
  2. API natychmiast zwróci odpowiedź zawierającą task_id (lub zawierającą podstawowy wynik).
  3. Po zakończeniu zadania platforma wyśle pełny JSON metodą POST do callback_url. Możesz powiązać żądanie z wynikiem za pomocą task_id.
Przykładowy ładunek wywołania zwrotnego (struktura pól jest zgodna z synchroniczną odpowiedzią pomyślną):

Obsługa błędów

W przypadku niepowodzenia wywołania zostanie zwrócony standardowy format błędu oraz identyfikator śledzenia. Typowe błędy są następujące:
  • 400 token_mismatched: Żądanie jest nieprawidłowe lub wystąpił błąd parametrów.
  • 400 api_not_implemented: Interfejs nie został zaimplementowany (skontaktuj się z pomocą techniczną).
  • 401 invalid_token: Uwierzytelnianie nie powiodło się lub brakuje Tokena.
  • 403 forbidden: Natywna polityka bezpieczeństwa dostawcy odrzuciła żądanie lub wynik generowania. To wywołanie nie zwróci obrazu i nie zostanie naliczona opłata; żądania wieloobrazowe nadal mogą zwracać i naliczać opłaty za inne pomyślne wywołania.
  • 429 too_many_requests: Przekroczono limit częstotliwości żądań.
  • 500 api_error: Błąd po stronie serwera.

Przykład odpowiedzi błędu


Porównanie parametrów i uwagi

  • Wymagane: action, prompt
  • Tylko do edycji: image_urls (tablica, co najmniej 1 element)
  • Opcjonalne: model (domyślnie nano-banana, opcjonalnie nano-banana-2-lite, nano-banana-2, nano-banana-2.1, nano-banana-pro; z wyjątkiem nano-banana-2.1, dostępne są również odpowiadające im wersje oficjalnego kanału :official), aspect_ratio (proporcje obrazu, np. 1:1, 16:9), resolution (rozdzielczość, np. 1K, 2K, 4K; nano-banana-2-lite obsługuje tylko 1K), callback_url (do asynchronicznego wywołania zwrotnego)
  • Nagłówki: Należy podać authorization: Bearer {token}; zaleca się ustawienie accept na application/json
  • Dostępność obrazów: image_urls muszą być bezpośrednimi linkami dostępnymi publicznie (HTTP/HTTPS), zaleca się użycie HTTPS
  • Idempotencja i śledzenie: Zachowaj task_id i trace_id, aby ułatwić rozwiązywanie problemów oraz powiązanie wyników