dokumentasi
API

Chat Completions

Markdown

Respons model terhadap percakapan dalam format OpenAI. Format paling umum: dipahami oleh hampir semua klien.

Panduan lengkap
POSThttps://api.ailoot.ai/v1/chat/completions
Chat Completions
curl https://api.ailoot.ai/v1/chat/completions \
  -H "Authorization: Bearer $AILOOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-5-5",
    "messages": [
      {"role": "user", "content": "Jelaskan apa itu API dalam dua kalimat."}
    ]
  }' 
200 OK
{
  "id": "chatcmpl-8f2c…",
  "object": "chat.completion",
  "created": 1790812800,
  "model": "claude-sonnet-5-5",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "API adalah kesepakatan tentang cara satu program meminta program lain melakukan sesuatu…"
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 21,
    "completion_tokens": 48,
    "total_tokens": 69
  }
}

Autentikasi

  • Authorizationheaderwajib

    Kunci dalam format Bearer sk-…. Header yang juga dapat digunakan: x-api-key atau x-goog-api-key.

Isi permintaan

  • modelstringwajib

    ID model dari katalog, misalnya claude-sonnet-5-5. Model harus mendukung format OpenAI Chat.

  • messagesarraywajib

    Riwayat percakapan: objek dengan role (system, developer, user, assistant, tool) dan content — berupa string atau array bagian (teks, image_url).

  • streambooleanopsional

    Respons dalam format Server-Sent Events. Nilai defaultnya false. Teks berbayar dikirim sekaligus setelah biaya dihitung, bukan kata demi kata.

  • stream_optionsobjectopsional

    {"include_usage": true} — kirim hasil akhir usage sebagai peristiwa terakhir dalam aliran.

  • max_tokensintegeropsional

    Jumlah maksimum token respons. Nama barunya — max_completion_tokens. Jika batas tidak ditentukan, Ailoot menetapkan 4096 (atau lebih rendah jika batas respons model lebih rendah; Grok memiliki batas tersendiri). Untuk respons panjang, tetapkan batas secara eksplisit; jika tidak, respons akan berhenti pada 4096 token dengan finish_reason: "length". Batas ini termasuk dalam saldo yang ditahan: makin tinggi nilainya, makin besar saldo bebas yang diperlukan.

  • temperaturenumberopsional

    Tingkat keacakan respons, biasanya dari 0 hingga 2. Dapat diabaikan oleh model penalaran.

  • top_pnumberopsional

    Alternatif untuk temperature: proporsi massa probabilitas yang digunakan untuk memilih token.

  • stopstring | arrayopsional

    String yang akan menghentikan proses generasi.

  • toolsarrayopsional

    Deskripsi fungsi yang dapat dipanggil model. Formatnya sama dengan OpenAI: {"type": "function", "function": {...}}.

  • tool_choicestring | objectopsional

    auto, none, required atau fungsi tertentu.

  • response_formatobjectopsional

    {"type": "json_object"} atau {"type": "json_schema", ...} untuk respons terstruktur — jika model mendukungnya.

  • reasoning_effortstringopsional

    Kedalaman penalaran untuk model penalaran: low, medium, high.

Parameter OpenAI lainnya diteruskan apa adanya; dukungan masing-masing model ditentukan oleh pengembang model tersebut.

Respons

  • choices[].messageobject

    Respons model: content, saat memanggil alat — tool_calls.

  • choices[].finish_reasonstring

    stop — respons selesai; length — mencapai batas max_tokens (respons seperti ini tetap dianggap lengkap dan ditagih berdasarkan pemakaian aktual); tool_calls — model memanggil alat.

  • usageobject

    prompt_tokens, completion_tokens, total_tokens — dasar perhitungan pendebitan.

Masih ada pertanyaan? Kirim Request ID dan penjelasannya — kami akan membantu.Hubungi dukungan