Source: https://ailoot.ai/docs/id/api/messages/
Canonical: https://ailoot.ai/docs/id/api/messages/
Language: id

[API](https://ailoot.ai/docs/id/) 

# Messages

[Markdown](https://ailoot.ai/docs/id/api/messages/index.md)

Format Anthropic Messages. Digunakan oleh Claude Code, Anthropic SDK, dan banyak agen.

POST`https://api.ailoot.ai/v1/messages`

Messages

```bash
curl https://api.ailoot.ai/v1/messages \
  -H "x-api-key: $AILOOT_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-5-5",
    "max_tokens": 1024,
    "messages": [{"role": "user", "content": "Halo! Apa yang bisa kamu lakukan?"}]
  }' 
```

```python
import anthropic
import os

client = anthropic.Anthropic(max_retries=0, 
    base_url="https://api.ailoot.ai",   # tanpa /v1: SDK akan menambahkan /v1/messages sendiri
    api_key=os.environ["AILOOT_API_KEY"],
)

msg = client.messages.create(
    model="claude-sonnet-5-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Jelaskan apa itu API dalam dua kalimat."}],
)
print(msg.content[0].text)
```

```js
import Anthropic from "@anthropic-ai/sdk";

const client = new Anthropic({ maxRetries: 0,
  baseURL: "https://api.ailoot.ai", // tanpa /v1
  apiKey: process.env.AILOOT_API_KEY,
});

const msg = await client.messages.create({
  model: "claude-sonnet-5-5",
  max_tokens: 1024,
  messages: [{ role: "user", content: "Jelaskan apa itu API dalam dua kalimat." }],
});
console.log(msg.content[0].type === "text" ? msg.content[0].text : msg.content);
```

200 OK

```json
{
  "id": "msg_01H…",
  "type": "message",
  "role": "assistant",
  "model": "claude-sonnet-5-5",
  "content": [
    { "type": "text", "text": "Halo! Saya bisa menulis dan menjelaskan kode, menjawab pertanyaan…" }
  ],
  "stop_reason": "end_turn",
  "usage": { "input_tokens": 14, "output_tokens": 52 }
}
```

## Autentikasi

| Parameter | Tipe | Wajib | Deskripsi |
| --- | --- | --- | --- |
| `x-api-key` | header | wajib | Kunci `sk-…`. Bisa juga `Authorization: Bearer sk-…` — seperti yang dilakukan Claude Code dengan `ANTHROPIC_AUTH_TOKEN`. |
| `anthropic-version` | header | opsional | Versi API, misalnya `2023-06-01`. SDK mengirimkannya secara otomatis. |

## Isi permintaan

| Parameter | Tipe | Wajib | Deskripsi |
| --- | --- | --- | --- |
| `model` | string | wajib | ID model dengan format Messages — 776 ID: Claude, serta GPT, Gemini, DeepSeek, Qwen, dan lainnya. |
| `messages` | array | wajib | Pesan `user` dan `assistant`; `content` — berupa string atau blok (`text`, `image`, `tool_use`, `tool_result`). |
| `max_tokens` | integer | wajib | Jumlah maksimum token respons. Termasuk dalam saldo yang ditahan; jika saldo tidak cukup untuk seluruh batas, Ailoot menurunkannya, tetapi tidak kurang dari 256 (1025 jika penalaran diaktifkan), dan memberi tahu batas baru melalui header `X-Ailoot-Max-Tokens-Capped`. |
| `system` | string \| array | opsional | Instruksi sistem. |
| `stream` | boolean | opsional | Aliran peristiwa SSE (`message_start`, `content_block_delta`, …, `message_stop`). Teks berbayar dikirim sekaligus setelah biaya dihitung. |
| `temperature` | number | opsional | Tingkat keacakan respons dari 0 hingga 1. |
| `tools` | array | opsional | Alat: `name`, `description`, `input_schema`. |
| `tool_choice` | object | opsional | `auto`, `any`, `tool` atau `none`. |
| `thinking` | object | opsional | `{"type": "enabled", "budget_tokens": N}` — penalaran untuk model yang mendukungnya. |
| `stop_sequences` | array | opsional | String yang akan menghentikan proses generasi. |

## Respons

| Parameter | Tipe | Wajib | Deskripsi |
| --- | --- | --- | --- |
| `content` | array |  | Blok respons: `text`, `thinking`, `tool_use`. |
| `stop_reason` | string |  | `end_turn`, `max_tokens`, `stop_sequence` atau `tool_use`. |
| `usage` | object |  | `input_tokens`, `output_tokens`, untuk cache — `cache_read_input_tokens` dan `cache_creation_input_tokens`. |

Penghitungan token (`POST /v1/messages/count_tokens`) untuk model dalam katalog saat ini tidak tersedia.

Masih ada pertanyaan? Kirim Request ID dan penjelasannya — kami akan membantu.[Hubungi dukungan](mailto:support@ailoot.ai)

## Ailoot · Perusahaan dan portofolio proyeknya





Ailoot bertumpu pada pengalaman operasional yang teruji, basis pelanggan yang besar, layanan yang stabil, dan pemantauan KPI berkelanjutan.





Perusahaan dan portofolio proyeknya: jutaan pelanggan; penjualan miliaran setiap bulan.





Ailoot memanfaatkan pengalaman operasional ini untuk akses API ke fitur AI dalam produk pelanggan, agen, aplikasi, dan otomatisasi.
