BazaarLinkBazaarLink
Masuk
DokumentasiReferensi APIReferensi SDKPenggunaan AgentikSkill AI
Messages (Anthropic)

Buat pesan

Meminta respons model menggunakan format /v1/messages native Anthropic; BazaarLink merutekannya ke model apa pun yang didukung, tidak hanya milik Anthropic sendiri. Arahkan base_url Anthropic SDK resmi ke BazaarLink, kode yang ada tetap berfungsi tanpa perubahan. Menerima baik Authorization: Bearer maupun header x-api-key yang lazim di Anthropic SDK. Jika model yang teresolusi bukan Anthropic native, BazaarLink menerjemahkan permintaan/respons secara transparan, mempertahankan blok tool_use dan semantik stop_reason sebisa mungkin.

POST/v1/messages

Otorisasi

Authorizationwajib
string · header

API key sebagai bearer token di header Authorization.

Body

modelwajib
string

Model yang digunakan, dengan prefiks penyedia, mis. "anthropic/claude-sonnet-4.6".

minLength: 1
Example: "anthropic/claude-sonnet-4.6"
messageswajib
Message[]

Array pesan percakapan, minimal satu. Setiap pesan memiliki role (user/assistant) dan content (string, atau array blok konten seperti text/image/tool_use/tool_result).

minLength: 1
max_tokenswajib
integer

Jumlah token maksimum yang dapat dihasilkan respons. Berbeda dari endpoint kompatibel OpenAI, field ini wajib dalam bentuk Anthropic.

positive integer
Example: 1024
system
string | ContentBlock[]

System prompt — field tingkat atas terpisah, bukan pesan di dalam array messages (salah satu perbedaan bentuk utama dari format OpenAI).

stream
boolean

true untuk streaming respons sebagai SSE (event message_start / content_block_delta / message_delta / message_stop); dihilangkan atau false mengembalikan satu respons JSON.

temperature
number

Suhu sampling — semakin tinggi semakin acak, semakin rendah semakin deterministik. Nilai sampling diteruskan tanpa validasi rentang; model dapat membatasi atau mengabaikan nilai di luar rentang yang didukung. Tidak divalidasi oleh BazaarLink — diteruskan apa adanya ke upstream. Jika model yang teresolusi bukan Anthropic native, penanganan field ini bergantung pada lapisan translasi BazaarLink.

top_p
number

Ambang batas nucleus sampling. Tidak divalidasi oleh BazaarLink — diteruskan apa adanya ke upstream. Jika model yang teresolusi bukan Anthropic native, penanganan field ini bergantung pada lapisan translasi BazaarLink.

top_k
integer

Membatasi sampling pada K token dengan probabilitas tertinggi. Tidak divalidasi oleh BazaarLink — diteruskan apa adanya ke upstream. Jika model yang teresolusi bukan Anthropic native, penanganan field ini bergantung pada lapisan translasi BazaarLink.

stop_sequences
string[]

Array string yang menghentikan generasi. Tidak divalidasi oleh BazaarLink — diteruskan apa adanya ke upstream. Jika model yang teresolusi bukan Anthropic native, penanganan field ini bergantung pada lapisan translasi BazaarLink.

tools
Tool[]

Daftar definisi tool yang dapat dipanggil model, berbentuk Anthropic (name, description, input_schema). Tidak divalidasi oleh BazaarLink — diteruskan apa adanya ke upstream. Jika model yang teresolusi bukan Anthropic native, penanganan field ini bergantung pada lapisan translasi BazaarLink.

tool_choice
object

Mengontrol apakah/bagaimana model dipaksa memanggil tool, mis. {type:"auto"}, {type:"any"}, {type:"tool", name:"..."}. Tidak divalidasi oleh BazaarLink — diteruskan apa adanya ke upstream. Jika model yang teresolusi bukan Anthropic native, penanganan field ini bergantung pada lapisan translasi BazaarLink.

thinking
object

Objek kontrol extended thinking, mis. {type:"enabled", budget_tokens:2048}. Hanya berarti pada model reasoning. Tidak divalidasi oleh BazaarLink — diteruskan apa adanya ke upstream. Jika model yang teresolusi bukan Anthropic native, penanganan field ini bergantung pada lapisan translasi BazaarLink.

metadata
object

Metadata permintaan, mis. {user_id:"..."}. Digunakan untuk pemantauan dan deteksi penyalahgunaan; tidak berpengaruh pada tagihan. Tidak divalidasi oleh BazaarLink — diteruskan apa adanya ke upstream. Jika model yang teresolusi bukan Anthropic native, penanganan field ini bergantung pada lapisan translasi BazaarLink.

POST /v1/messages
curl https://api.bazaarlink.ai/v1/messages \
  -H "Authorization: Bearer $BAZAARLINK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-sonnet-4.6",
    "max_tokens": 1024,
    "messages": [{"role": "user", "content": "Hello"}]
  }'
Contoh respons

BazaarLink mengembalikan respons terstandar dan menghapus field khusus upstream. usage.cost adalah jumlah USD yang ditagihkan kepada pelanggan untuk permintaan ini. Gunakan ID permintaan BazaarLink yang buram dari id respons atau header x-request-id pada GET /v1/generation; respons non-streaming juga menyertakan ID itu di x-generation-id. Statistik dapat muncul beberapa detik setelah selesai; coba lagi sebentar jika mendapat 404. usage.cost dan usage.bz_cost berisi jumlah tagihan USD yang sama. Permintaan Chat, Messages, dan Responses non-streaming yang lama (sekitar 12 detik atau lebih) dapat diawali padding keep-alive berupa whitespace sebelum body JSON. Parser JSON standar menerima whitespace awal.

{
  "id": "85e6f35c71a31f19-SJC",
  "type": "message",
  "role": "assistant",
  "model": "anthropic/claude-sonnet-4.6",
  "content": [
    {
      "type": "text",
      "text": "Hello! How can I help you today?"
    }
  ],
  "stop_reason": "end_turn",
  "stop_sequence": null,
  "usage": {
    "input_tokens": 10,
    "output_tokens": 12,
    "cache_creation_input_tokens": 0,
    "cache_read_input_tokens": 0,
    "cost": 0.000186,
    "bz_cost": 0.000186
  }
}
Support
Support
Hi! How can we help you?
Send a message and we'll get back to you soon.
Buat pesan — BazaarLink API