Skip to main content
Ten dokument przedstawia integrację i użytkowanie Nano Banana Images API. Interfejs obsługuje dwie funkcjonalności: generowanie obrazów (generate) oraz edycję obrazów (edit).

Proces aplikacji

Aby korzystać z Nano Banana Images API, najpierw przejdź do konsoli Ace Data Cloud, aby uzyskać swój token API, który należy zachować na przyszłość. Jeśli nie jesteś zalogowany lub zarejestrowany, automatycznie zostaniesz przekierowany na stronę logowania, aby zarejestrować się i zalogować, a po zakończeniu zostaniesz automatycznie przekierowany z powrotem na bieżącą stronę. Jeden token API wystarczy do korzystania ze wszystkich usług platformy, nie ma potrzeby składania osobnych wniosków dla każdej usługi. Przy pierwszym wniosku otrzymasz darmowy limit, aby móc skorzystać z usługi; w przypadku niewystarczającego limitu możesz doładować saldo ogólne w konsoli.
📘 Pełna dokumentacja: Nano Banana Images API →

Przegląd interfejsu

  • Podstawowy URL: https://api.acedata.cloud
  • Endpoint: POST /nano-banana/images
  • Metoda autoryzacji: W nagłówku HTTP należy przesłać authorization: Bearer {token}
  • Nagłówki żądania:
    • accept: application/json
    • content-type: application/json
  • Akcja (action):
    • generate: generowanie obrazu na podstawie tekstowego opisu
    • edit: edytowanie na podstawie podanego obrazu
  • Model (model) (opcjonalnie):
    • nano-banana (domyślny): oparty na Gemini 2.5 Flash Image, szybki, niskokosztowy
    • nano-banana-2-lite: oparty na Gemini 3.1 Flash Lite Image, obsługuje tylko 1K, szybkie generowanie
    • nano-banana-2: oparty na Gemini 3.1 Flash Image Preview, jakość Pro + szybkość Flash
    • 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 modeli, lepsza jakość obrazu i stabilność, różne opłaty
  • Asynchroniczny callback: opcjonalnie, przez callback_url można otrzymać powiadomienia o zakończeniu zadania i wyniki
  • Liczba obrazów: opcjonalnie, przez count można określić 1–4 obrazy, domyślnie 1; w przypadku częściowych niepowodzeń zwracane są tylko udane obrazy i naliczane są opłaty

Szybki start: Generowanie obrazów (action=generate)

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

Przykład żądania (cURL)

Przykład żądania (Python)

Przykład udanej odpowiedzi

Opis pól

  • success: Czy to żądanie zakończyło się sukcesem.
  • task_id: ID zadania.
  • trace_id: ID śledzenia, ułatwiające rozwiązywanie problemów.
  • count: Liczba obrazów do wygenerowania lub edytowania, obsługuje 1–4, domyślnie 1. W przypadku częściowych niepowodzeń data zawiera tylko udane obrazy.
  • data[]: Lista wyników.
    • prompt: Użyty do generowania opis (echo).
    • image_url: Bezpośredni URL do wygenerowanego obrazu.
Uwaga: /nano-banana/images wymaga jedynie action i prompt, aby wygenerować obraz.

Edytowanie obrazów (action=edit)

Gdy chcesz edytować istniejący obraz, ustaw action na edit i przekaż listę linków do obrazów do edytowania w image_urls (1 lub więcej), jednocześnie podając opis celu edycji w prompt. Na przykład, jeśli dostarczymy zdjęcie osoby i zdjęcie ubrania, aby osoba mogła założyć to ubranie, możemy jednocześnie przesłać linki do obrazów i określić akcję jako edit. URL może być publicznie dostępnym linkiem HTTP, z protokołem https lub http, lub może być obrazem zakodowanym w Base64, np. data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAVGCAMAAAA6u2FyAAADAFBMVEXq6uwdHCEeHyMdHS....

Przykład żądania (cURL)

Przykład udanego zwrotu

Opis pól

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

Asynchroniczny callback (opcjonalny, zalecany)

Generowanie lub edytowanie może zająć trochę czasu. Aby uniknąć zajmowania zasobów przez długie połączenia, zaleca się użycie callback_url do Webhook callback:
  1. Dodaj callback_url do ciała żądania, na przykład adres Webhook na swoim serwerze (musi być dostępny publicznie, obsługujący POST JSON).
  2. API natychmiast zwróci odpowiedź zawierającą task_id (lub podstawowy wynik).
  3. Gdy zadanie zostanie zakończone, platforma wyśle pełny JSON do callback_url metodą POST. Możesz powiązać żądanie z wynikiem za pomocą task_id.
Przykład ładunku callback (struktura pól jest zgodna z synchronizowanym udanym zwrotem):

Obsługa błędów

W przypadku niepowodzenia wywołania zwróci standardowy format błędu oraz identyfikator śledzenia. Powszechne błędy to:
  • 400 token_mismatched: żądanie nielegalne lub błąd parametrów.
  • 400 api_not_implemented: interfejs nie został zaimplementowany (proszę skontaktować się z pomocą techniczną).
  • 401 invalid_token: nieudana autoryzacja lub brak tokena.
  • 429 too_many_requests: przekroczono limit częstotliwości żądań.
  • 500 api_error: błąd serwera.

Przykład odpowiedzi błędu


Zestawienie parametrów i uwagi

  • Wymagane: action, prompt
  • Specjalne dla edycji: image_urls (tablica, co najmniej 1 element)
  • Opcjonalne: model (domyślnie nano-banana, opcjonalnie nano-banana-2-lite, nano-banana-2, nano-banana-pro, lub odpowiadająca wersja :official), aspect_ratio (proporcje, np. 1:1, 16:9), resolution (rozdzielczość, np. 1K, 2K, 4K; nano-banana-2-lite obsługuje tylko 1K), callback_url (do asynchronicznego callbacku)
  • Nagłówki: należy podać authorization: Bearer {token}; accept zaleca się ustawić 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 i powiązanie wyników