Google Imagen 3 Image Generation API

Google's most advanced image model with photorealistic quality

✓ Photorealistic quality

✓ Multiple resolutions

✓ Fast generation

✓ Batch support

Autentikasi

Untuk mengakses Google Imagen 3 API melalui API Doitong, gunakan kunci API Doitong Anda. Sertakan kunci tersebut dalam mutasi GraphQL atau header REST API.

Penting: Jaga keamanan kunci API Doitong Anda dan jangan pernah mengeksposnya dalam kode sisi klien (client-side). Selalu lakukan panggilan API dari server backend Anda.
// GraphQL Header
{
  "Authorization": "Bearer YOUR_API_KEY"
}

// REST Header
"X-API-Key": "YOUR_API_KEY"

Memulai Cepat

Mulai gunakan Google Imagen 3 API hanya dalam beberapa menit. Ikuti langkah-langkah sederhana ini untuk membuat text to image pertama Anda.

Langkah 1: Dapatkan Kunci API Anda

Daftar akun Doitong dan buka dasbor Anda untuk membuat kunci API.

Langkah 2: Buat Permintaan Pertama Anda

Gunakan salah satu contoh kode di bawah ini untuk melakukan panggilan API pertama Anda.

curl -X POST https://api.doitong.com/graphql \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "query": "mutation Generate($input: GenerateInput!) { generate(input: $input) { id status type provider url metadata creditCost } }",
    "variables": {
      "input": {
        "type": "IMAGE",
        "provider": "imagen",
        "input": {
          "text": "A futuristic city with flying cars and neon lights"
        },
        "options": {
          "width": 1024,
          "height": 1024
        }
      }
    }
  }'
const response = await fetch('https://api.doitong.com/graphql', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer YOUR_API_KEY'
  },
  body: JSON.stringify({
    query: `
      mutation GenerateImage($input: ImageGenerationInput!) {
        generateImage(input: $input) {
          id
          url
          width
          height
        }
      }
    `,
    variables: {
      input: {
        service: 'imagen',
        prompt: 'A futuristic city with flying cars and neon lights',
        width: 1024,
        height: 1024
      }
    }
  })
});

const data = await response.json();
console.log('Image:', data.data.generateImage);
import requests
import json

url = "https://api.doitong.com/graphql"
headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer YOUR_API_KEY"
}

query = """
mutation Generate($input: GenerateInput!) {
  generate(input: $input) {
    id
    status
    type
    provider
    url
    metadata
    creditCost
  }
}
"""

variables = {
    "input": {
        "type": "IMAGE",
        "provider": "imagen",
        "input": {
            "text": "A futuristic city with flying cars and neon lights"
        },
        "options": {
            "width": 1024,
            "height": 1024
        }
    }
}

response = requests.post(url, json={
    "query": query,
    "variables": variables
}, headers=headers)

data = response.json()
print("Result:", data["data"]["generate"])
mutation Generate($input: GenerateInput!) {
  generate(input: $input) {
    id
    status
    type
    provider
    url
    metadata
    creditCost
    createdAt
  }
}

# Variables
{
  "input": {
    "type": "IMAGE",
    "provider": "imagen",
    "input": {
      "text": "A futuristic city with flying cars and neon lights"
    },
    "options": {
      "width": 1024,
      "height": 1024,
      "version": "imagen-3-fast-turbo",
      "quality": "high"
    }
  }
}

Harga

Google Imagen 3 API menggunakan model harga berbasis kredit. Kredit digunakan berdasarkan kompleksitas dan durasi konten yang dihasilkan.

Fitur Kredit Deskripsi
Resolusi Standar 10-20 Kredit 512x512 hingga 1024x1024 piksel
Resolusi Tinggi 30-50 Kredit 2048x2048 piksel ke atas

Endpoint API

Google Imagen 3 API tersedia melalui endpoint GraphQL terpadu kami.

Endpoint GraphQL

POST https://api.doitong.com/graphql

Endpoint REST

POST https://api.doitong.com/v1/text_to_image

Parameter

Parameter yang tersedia untuk permintaan Google Imagen 3 API:

Parameter Tipe Wajib Deskripsi
service String Yes Pengidentifikasi layanan: "imagen"
prompt String Yes Deskripsi teks tentang apa yang ingin dibuat
width Integer No Lebar gambar dalam piksel (default: 1024)
height Integer No Tinggi gambar dalam piksel (default: 1024)
version String No Model version: "imagen-3-large", "imagen-3-medium", "imagen-3-fast-turbo"
webhookUrl String No URL untuk menerima notifikasi penyelesaian

Format Respons

Semua respons API mengikuti format yang konsisten:

Respons Berhasil

{
  "data": {
    "generateimage": {
      "id": "abc123xyz",
      "status": "processing",
      "url": null,
      "webhookUrl": "https://your-webhook.com/callback",
      "createdAt": "2024-01-01T00:00:00Z"
    }
  }
}

Respons Selesai

{
  "data": {
    "generateimage": {
      "id": "abc123xyz",
      "status": "completed",
      "url": "https://cdn.doitong.com/outputs/abc123xyz.jpg",
      "duration": null,
      "createdAt": "2024-01-01T00:00:00Z"
    }
  }
}

Penanganan Error

API menggunakan kode status HTTP standar dan mengembalikan pesan error yang mendetail.

Kode Error Umum

Kode Status Tipe Error Deskripsi
400 Bad Request Invalid parameters or malformed request
401 Unauthorized Missing or invalid API key
402 Payment Required Insufficient credits
429 Too Many Requests Rate limit exceeded
500 Internal Server Error Server error, please retry

Format Respons Error

{
  "errors": [
    {
      "message": "Insufficient credits for this operation",
      "extensions": {
        "code": "INSUFFICIENT_CREDITS",
        "creditsRequired": 100,
        "creditsAvailable": 50
      }
    }
  ]
}

Webhook

Terima notifikasi real-time saat pembuatan text to image Anda selesai.

Menyiapkan Webhook

Include a <code>webhookUrl</code> parameter in your request to receive a POST notification when processing is complete.

Payload Webhook

{
  "id": "abc123xyz",
  "status": "completed",
  "url": "https://cdn.doitong.com/outputs/abc123xyz.jpg",
  "service": "imagen",
  "createdAt": "2024-01-01T00:00:00Z",
  "completedAt": "2024-01-01T00:01:00Z",
  "metadata": {
    "duration": null,
    "width": 1920,
    "height": 1080
  }
}

Keamanan Webhook

Semua permintaan webhook menyertakan header tanda tangan untuk verifikasi:

X-Doitong-Signature: sha256=abc123...

Batas Kecepatan

Untuk memastikan penggunaan yang adil dan stabilitas sistem, batas kecepatan berikut berlaku:

Paket Permintaan/Menit Pekerjaan Simultan Batas Harian
Gratis 10 1 100
Starter 30 3 1,000
Pro 60 10 10,000
Enterprise Kustom Kustom Tanpa Batas
Header Batas Kecepatan: Periksa header respons untuk status batas saat ini:
  • X-RateLimit-Limit: Maximum requests per window
  • X-RateLimit-Remaining: Requests remaining
  • X-RateLimit-Reset: Window reset timestamp

Praktik Terbaik

1. Optimalkan Prompt Anda

Tulis prompt yang jelas dan deskriptif untuk hasil terbaik:

  • Be specific about visual elements, style, and mood
  • Include details about lighting, camera angles, and composition
  • Avoid contradictory or impossible requests

2. Tangani Pemrosesan Asinkron

Pembuatan bersifat asinkron. Terapkan polling atau webhook yang tepat:

// Polling example
async function pollStatus(jobId) {
  let status = 'processing';
  while (status === 'processing') {
    await sleep(2000); // Wait 2 seconds
    const result = await checkJobStatus(jobId);
    status = result.status;
  }
  return result;
}

3. Pemulihan Error

Terapkan logika percobaan ulang (retry) dengan exponential backoff:

async function retryWithBackoff(fn, maxRetries = 3) {
  for (let i = 0; i < maxRetries; i++) {
    try {
      return await fn();
    } catch (error) {
      if (i === maxRetries - 1) throw error;
      await sleep(Math.pow(2, i) * 1000);
    }
  }
}

4. Pantau Penggunaan Kredit

Lacak konsumsi kredit Anda untuk menghindari gangguan:

  • Check credit balance before large batch operations
  • Set up alerts for low credit thresholds
  • Implement credit-aware request queuing

Siap untuk Memulai?

Bergabunglah dengan ribuan pengembang yang menggunakan Google Imagen 3 API untuk membuat konten luar biasa

Dapatkan Kunci API Lihat Harga