API

Nano Banana 2 API

이미지

Nano Banana 2 API는 실시간 세계 지식과 고급 추론을 결합해 더 뛰어난 프롬프트 이해와 정확한 시각 결과를 제공합니다. 네이티브 4K에서 여러 피사체의 일관성을 유지하고, 유연한 화면비와 복잡한 구도에서도 정교한 글로벌 타이포그래피를 지원합니다. Nano Banana 2 API를 연동해 더 스마트하고 확장 가능한 고품질 이미지 워크플로를 구축하세요.

인증

Bearerstringheader필수

요청 인증용 API 키

본문

application/json
modelstring필수
nano-banana-2
input.promptstring필수

생성할 이미지 또는 참조 이미지에 적용할 변경 사항을 설명하세요. 앞뒤 공백은 제거됩니다.

최대 길이: 5,000자

input.imagesstring[]선택

선택적 참조 이미지 URL 목록입니다. 공개적으로 접근 가능한 HTTPS URL만 사용하세요. 텍스트로 이미지를 생성할 때는 생략하세요.

최대 항목 수: 14

input.aspect_ratiostring선택

출력의 가로-세로 비율입니다. Auto를 사용하면 모델이 선택합니다.

기본값: auto

auto1:12:33:23:44:34:55:49:1616:921:91:44:11:88:1
input.resolutionstring선택

출력 해상도 단계입니다. 값은 대소문자를 구분하지 않습니다. 생략하거나 비워 두면 기본값을 사용합니다.

기본값: 2k

1k2k4k

요청 예제

POST /api/v1/create
curl -X POST https://nanobanana.io/api/v1/create \
  -H "Authorization: Bearer sk_live_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "nano-banana-2",
  "input": {
    "prompt": "미래형 바나나 모양 카메라를 담은 시네마틱 제품 사진",
    "aspect_ratio": "1:1",
    "resolution": "2k"
  }
}'
POST /api/v1/create · HTTP 201
{
  "data": {
    "task_id": "task_example",
    "model": "nano-banana-2",
    "status": "processing",
    "credits": 30
  }
}

반환된 작업 ID를 사용해 작업이 완료되거나 실패할 때까지 이 엔드포인트를 폴링하세요. 최신 작업 상태를 확인하려면 5초마다 폴링하는 것을 권장합니다.

POST /api/v1/check
{
  "task_id": "task_example"
}

응답

POST /api/v1/check가 반환하는 작업 상태입니다. 아래 ID, URL, 타임스탬프는 예시입니다.

idstring필수

data.id는 작업 식별자로, 조회 요청의 task_id와 같습니다.

statusstring필수
completed는 생성 성공을 나타내며 data.data에 결과가 포함됩니다. 다른 상태에서는 data.data가 null입니다.
failed_reasonstring선택

status가 failed일 때만 반환되며 실패 이유를 설명합니다. completed와 processing에는 이 필드가 없습니다.

완료 · completed

다운로드 URL은 data.data.results에 있습니다.

POST /api/v1/check · HTTP 200
{
  "data": {
    "id": "task_example",
    "created_at": 1791244800,
    "model": "nano-banana-2",
    "status": "completed",
    "data": {
      "results": [
        "https://example.com/generated.png"
      ],
      "processing_time": 18
    }
  }
}

다른 상태

processing 또는 failed에서는 data.data가 null입니다. 아래는 failed 예시이며, failed일 때만 failed_reason이 포함됩니다. processing이면 조회를 계속하고, failed이면 중단하세요.

POST /api/v1/check · HTTP 200
{
  "data": {
    "id": "task_example",
    "created_at": 1791244800,
    "model": "nano-banana-2",
    "status": "failed",
    "data": null,
    "failed_reason": "Generation failed."
  }
}

크레딧 사용량

한 번의 요청으로 이미지 한 장을 생성할 때 소비되는 크레딧입니다.

한 번의 요청으로 이미지 한 장을 생성할 때 소비되는 크레딧입니다.
해상도1K2K4K
이미지 한 장203040

선택 매개변수 생략: 20 크레딧

해당 요금을 적용하려면 표에 나열된 input 매개변수를 명시적으로 설정하세요. 여러 이미지를 생성하는 요청은 더 많은 크레딧을 소비할 수 있습니다.

POST /api/v1/create 응답의 credits 필드는 해당 작업에 실제로 차감된 크레딧을 나타냅니다.