Base URL
All endpoints are served under:
How it works
All generation requests are asynchronous. A successful call returns202 Accepted with a job_id and a status_url. You then poll GET /jobs/{job_id} until the job reaches a terminal state (done or failed).
1
Create a job
POST to a generation endpoint with your prompt and parameters. You receive a job_id.2
Poll for the result
GET /jobs/{job_id} until status is done or failed.3
Download the image
When
done, read result.image_url — a presigned URL valid for 24 hours.Prefer a synchronous call that returns the image inline? Use the Gemini-compatible API with Google’s official
google-genai SDK — same key, no polling.Models at a glance
Next steps
Quickstart
Create your first generation end-to-end with cURL.
Authentication
Get your API key and learn about idempotency.
Models
Compare NanoBanana, NanoBanana 2, and Pro.
Gemini-compatible API
Use the
google-genai SDK against BananaHub.API Reference
Full request and response schemas.