Gemini AI API

Dokumentasi resmi Gemini AI API dari Maelyn API untuk integrasi AI Google Gemini (chat & image) dengan multi API key rotation

Base Information

  • BASE_URL_API: https://api.maelyn.eu
  • Path / Endpoint: /ai/gemini
  • Full URL: https://api.maelyn.eu/ai/gemini
  • Method: POST
  • Credit Usage: 5

Authentication

Gunakan header berikut pada setiap request:

maelyn_auth: YOUR_API_KEY
Content-Type: application/json

Request Body

Endpoint ini digunakan untuk berinteraksi dengan Gemini AI (chat maupun image generation).

{
  "prompt": "Jelaskan apa itu Artificial Intelligence",
  "model": "gemini-3-flash-preview"
}

Body Parameters

NameTypeRequiredDescription
promptstringYes*Input teks utama
querystringYes*Alternatif dari prompt
textstringYes*Alternatif dari prompt
messagestringYes*Alternatif dari prompt
messagesarrayNoMulti chat format
imagesarrayNoInput gambar (URL / base64)
modelstringNoModel Gemini
modestringNochat atau image
systemstringNoSystem instruction
temperaturenumberNoKreativitas output
topPnumberNoSampling parameter
topKnumberNoSampling parameter
maxOutputTokensnumberNoMaks token output
thinkingbooleanNoAktifkan reasoning
include_thoughtsbooleanNoSertakan chain-of-thought

Salah satu dari prompt, query, text, message, atau messages wajib diisi.

Example Usage

Simple Chat

{
  "prompt": "Jelaskan apa itu AI"
}

Multi Chat + System

{
  "system": "Kamu adalah guru teknologi",
  "messages": [
    { "role": "user", "content": "Apa itu AI?" }
  ]
}

Image Generation

{
  "prompt": "Anime girl with blue hair",
  "mode": "image"
}

Multi Modal (Text + Image)

{
  "prompt": "Jelaskan gambar ini",
  "images": [
    "https://example.com/image.jpg"
  ]
}

Success Response

{
  "success": true,
  "model": "gemini-3-flash-preview",
  "mode": "chat",
  "api_key_index": 1,
  "result": {
    "text": "Artificial Intelligence adalah teknologi...",
    "thoughts": [],
    "images": [],
    "finish_reason": "STOP",
    "usage": {
      "promptTokenCount": 20,
      "candidatesTokenCount": 30,
      "totalTokenCount": 50
    }
  }
}

Success Response (Image)

{
  "success": true,
  "model": "gemini-3.1-flash-image-preview",
  "mode": "image",
  "api_key_index": 2,
  "result": {
    "text": null,
    "thoughts": [],
    "images": [
      "https://cdn.maelyn.eu/generated-image.png"
    ],
    "finish_reason": "STOP",
    "usage": null
  }
}

Error Response

Invalid JSON

{
  "success": false,
  "error": "INVALID_JSON",
  "message": "Body request harus berupa JSON"
}

Query Required

{
  "success": false,
  "error": "QUERY_REQUIRED",
  "message": "Field query wajib diisi"
}

Invalid Image Input

{
  "success": false,
  "error": "INVALID_IMAGE_INPUT",
  "message": "Format images tidak valid"
}

Image Fetch Failed

{
  "success": false,
  "error": "IMAGE_FETCH_FAILED",
  "message": "Gagal mengambil gambar dari URL"
}

Upstream API Error

{
  "success": false,
  "error": "UPSTREAM_API_ERROR",
  "message": "Gagal mengambil respon dari Gemini"
}

All API Keys Exhausted

{
  "success": false,
  "error": "ALL_API_KEYS_EXHAUSTED",
  "message": "Semua API key Gemini sedang limit atau tidak dapat digunakan"
}

API Keys Not Configured

{
  "success": false,
  "error": "GEMINI_API_KEYS_EMPTY",
  "message": "API key Gemini belum dikonfigurasi"
}

Internal Server Error

{
  "success": false,
  "error": "INTERNAL_SERVER_ERROR",
  "message": "Terjadi kesalahan pada sistem"
}

Playground