API 문서

AI 이미지 생성을 애플리케이션에 통합하세요

개요

GirlGeneratorAI API를 사용하면 프로그래매틱하게 AI 이미지를 생성할 수 있습니다. 모든 요청은 JSON을 사용하며 API 키를 통한 인증이 필요합니다.

Base URLhttps://girlgenerator.app

인증

모든 API 요청에는 Bearer 토큰이 필요합니다. API 키는 다음에서 생성하세요 설정 → API 키.

헤더
Authorization: Bearer YOUR_API_KEY

이미지 생성

이미지 생성 작업을 제출합니다. 응답에는 폴링용 작업 ID가 포함됩니다.

POST /api/v1/generate

파라미터

scenestringrequired
"text-to-image" 또는 "image-to-image"
promptstringrequired
이미지를 묘사하는 텍스트 프롬프트 (최대 2000자)
aspect_ratiostring
선택 사항. auto, 1:1, 3:2, 2:3, 9:16, 16:9, 3:4, 4:3 중 하나. 기본값: auto
image_inputstring[]
image-to-image에 필수. 참고 이미지 URL 배열

응답

201 Created
{
  "task_id": "abc123",
  "status": "pending",
  "credits_used": 1,
  "credits_remaining": 12762
}

예시

cURL
curl -X POST https://girlgenerator.app/api/v1/generate \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "scene": "text-to-image",
    "prompt": "a cute anime girl with blue hair, detailed portrait",
    "aspect_ratio": "1:1"
  }'
Python
import requests

response = requests.post(
    "https://girlgenerator.app/api/v1/generate",
    headers={"Authorization": "Bearer YOUR_API_KEY"},
    json={
        "scene": "text-to-image",
        "prompt": "a cute anime girl with blue hair, detailed portrait",
        "aspect_ratio": "1:1",
    },
)
data = response.json()
print(data["task_id"])  # Use this to poll for results
JavaScript (fetch)
const response = await fetch("https://girlgenerator.app/api/v1/generate", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    scene: "text-to-image",
    prompt: "a cute anime girl with blue hair, detailed portrait",
    aspect_ratio: "1:1",
  }),
});

const data = await response.json();
console.log(data.task_id); // Use this to poll for results

작업 조회

작업 상태를 확인하고 생성된 이미지를 가져오기 위해 작업을 폴링합니다.

GET /api/v1/tasks/task_id

응답

Pending / Processing
{
  "task_id": "abc123",
  "status": "processing"
}
Success
{
  "task_id": "abc123",
  "status": "success",
  "images": [
    "https://example.com/generated-image.png"
  ]
}
Failed
{
  "task_id": "abc123",
  "status": "failed",
  "error": "Generation failed due to content policy."
}

상태 값

pending작업이 대기 중입니다
processing이미지를 생성 중입니다
success생성 완료, 이미지를 사용할 수 있습니다
failed생성 실패, 오류 메시지를 확인할 수 있습니다

Polling Example

Python
import time
import requests

API_KEY = "YOUR_API_KEY"
BASE_URL = "https://girlgenerator.app"

# 1. Submit generation task
resp = requests.post(
    f"{BASE_URL}/api/v1/generate",
    headers={"Authorization": f"Bearer {API_KEY}"},
    json={"scene": "text-to-image", "prompt": "a cute anime girl"},
)
task_id = resp.json()["task_id"]

# 2. Poll until complete
while True:
    result = requests.get(
        f"{BASE_URL}/api/v1/tasks/{task_id}",
        headers={"Authorization": f"Bearer {API_KEY}"},
    ).json()

    if result["status"] == "success":
        print("Images:", result["images"])
        break
    elif result["status"] == "failed":
        print("Error:", result["error"])
        break

    time.sleep(5)  # Wait 5 seconds before polling again

오류 코드

모든 오류는 다음 형식을 따릅니다:

{
  "error": {
    "code": "error_code",
    "message": "Human-readable description."
  }
}
HTTP 상태오류 코드설명
401unauthorizedAPI 키가 누락되었거나 유효하지 않음
403insufficient_credits이 작업에 크레딧이 부족함
404task_not_found작업이 존재하지 않거나 다른 사용자에게 속함
422invalid_params요청 검증 실패
429rate_limit_exceeded요청이 너무 많음 (제한: 분당 10회)
500internal_error서버 오류

요청 제한 & 크레딧

API 키당 분당 10회 요청

💰

크레딧 비용은 모델에 따라 다릅니다: 생성당 1–3 크레딧. 자세한 내용은 모델 목록을 참조하세요.

🛈

API와 웹 사용은 동일한 크레딧 잔액을 공유합니다.