Skip to main content
POST
CometAPI mendukung format API native Gemini, memberi Anda akses penuh ke fitur khusus Gemini seperti kontrol thinking, Google Search grounding, modalitas pembuatan gambar native, dan lainnya. Gunakan endpoint ini ketika Anda membutuhkan kapabilitas yang tidak tersedia melalui endpoint chat yang kompatibel dengan OpenAI.
Gunakan referensi API GenerateContent resmi Google sebagai sumber utama untuk field permintaan lengkap, skema respons, dan perilaku khusus model Gemini. Halaman CometAPI ini menjelaskan cara mengirim bentuk permintaan native tersebut melalui CometAPI.
Parameter permintaan Gemini dan field respons dapat berubah saat Google memperbarui API native. Periksa dokumentasi pembuatan teks Gemini untuk daftar parameter lengkap terbaru dan perilaku khusus penyedia.
Header x-goog-api-key dan Authorization: Bearer keduanya didukung untuk autentikasi.

Quick start

Untuk menggunakan SDK Gemini atau klien HTTP apa pun dengan CometAPI, ganti base URL dan API key:

Kirim input video

Gemini generateContent menerima video sebagai bagian konten. Pilih bentuk input berdasarkan tempat video disimpan:
Untuk request REST dan curl, gunakan nama field camelCase Gemini seperti inlineData.mimeType dan fileData.fileUri. Jangan kirim media URL sebagai file_data.file_uri.
Contoh ini membaca file MP4 lokal, mengodekannya sebagai base64, lalu mengirimkannya dalam body request:
Contoh ini mengirim URL MP4 publik dengan fileData.fileUri:
CometAPI tidak merekomendasikan alur upload Gemini Files API terpisah untuk endpoint ini. Kirim media di dalam request generateContent itu sendiri menggunakan inlineData atau fileData.fileUri.

Konfigurasikan thinking (reasoning)

Model Gemini dapat melakukan reasoning internal sebelum menghasilkan respons. Metode kontrolnya bergantung pada generasi model.
Model Gemini 3 menggunakan thinkingLevel untuk mengontrol kedalaman reasoning. Level yang tersedia: MINIMAL, LOW, MEDIUM, HIGH.Gunakan gemini-3-flash-preview sebagai model contoh default kecuali Anda secara khusus memerlukan varian Gemini 3 yang berbeda.
Menggunakan thinkingLevel dengan model Gemini 2.5 (atau thinkingBudget dengan model Gemini 3) dapat menyebabkan error. Gunakan parameter yang benar untuk versi model Anda.

Stream respons

Untuk menerima Server-Sent Events saat model menghasilkan konten, gunakan streamGenerateContent?alt=sse sebagai operator. Setiap event SSE berisi baris data: dengan objek JSON GenerateContentResponse.

Atur instruksi sistem

Untuk memandu perilaku model di seluruh percakapan, gunakan systemInstruction:

Minta output JSON

Untuk memaksa output JSON terstruktur, setel responseMimeType. Secara opsional, berikan responseSchema untuk validasi skema yang ketat:

Untuk mengaktifkan pencarian web real-time, tambahkan tool googleSearch:
Respons mencakup groundingMetadata dengan URL sumber dan skor keyakinan.

Contoh response

Response umum dari endpoint Gemini CometAPI:
Field thoughtsTokenCount dalam usageMetadata menunjukkan berapa banyak token yang digunakan model untuk penalaran internal, bahkan ketika output pemikiran tidak disertakan dalam response.

Perbandingan dengan endpoint kompatibel OpenAI

Otorisasi

x-goog-api-key
string
header
wajib

Your CometAPI key passed via the x-goog-api-key header. Bearer token authentication (Authorization: Bearer $COMETAPI_KEY) is also supported.

Parameter Path

model
string
wajib

Gemini model ID. Example: gemini-3-flash-preview, gemini-2.5-pro. See the Models page for current options.

operator
enum<string>
wajib

The operation to perform. Use generateContent for synchronous responses, or streamGenerateContent?alt=sse for Server-Sent Events streaming.

Opsi yang tersedia:
generateContent,
streamGenerateContent?alt=sse

Body

application/json
contents
object[]

Conversation content. Each entry has an optional role (user or model) and a parts array.

systemInstruction
object

System instructions that guide the model's behavior across the entire conversation. Text only.

tools
object[]

Tools the model may use to generate responses. Supports function declarations, Google Search, Google Maps, and code execution.

toolConfig
object

Configuration for tool usage, such as function calling mode.

safetySettings
object[]

Safety filter settings. Override default thresholds for specific harm categories.

generationConfig
object

Configuration for model generation behavior including temperature, output length, and response format.

cachedContent
string

The name of cached content to use as context. Format: cachedContents/{id}. See the Gemini context caching documentation for details.

Respons

200 - application/json

Successful response. For streaming requests, the response is a stream of SSE events, each containing a GenerateContentResponse JSON object prefixed with data:.

candidates
object[]

The generated response candidates.

promptFeedback
object

Feedback on the prompt, including safety blocking information.

usageMetadata
object

Token usage statistics for the request.

modelVersion
string

The model version that generated this response.

createTime
string

The timestamp when this response was created (ISO 8601 format).

responseId
string

Unique identifier for this response.