Langsung ke konten utama

Ringkasan

Endpoint ini menyediakan kompatibilitas native dengan Anthropic Messages API. Gunakan ini untuk model Claude dengan fitur seperti extended thinking.
Base URL untuk Anthropic SDK: https://api.lemondata.cc (tanpa sufiks /v1)

Header Permintaan

x-api-key
string
wajib
LemonData API key Anda. Alternatif untuk token Bearer.
anthropic-version
string
wajib
Versi Anthropic API. Gunakan 2023-06-01.

Body Permintaan

model
string
wajib
ID model Claude (misalnya, claude-sonnet-4-6 atau claude-opus-4-6).
messages
array
wajib
Array objek message dengan role dan content.
max_tokens
integer
wajib
Jumlah token maksimum yang akan dihasilkan.
system
string
Prompt sistem (terpisah dari array messages).
temperature
number
default:"1"
Temperature sampling (0-1).
stream
boolean
default:"false"
Aktifkan respons streaming.
thinking
object
Konfigurasi extended thinking (Claude Opus 4.5).
  • type (string): "enabled" untuk mengaktifkan
  • budget_tokens (integer): Anggaran token untuk thinking
tools
array
Tools yang tersedia untuk model.
tool_choice
object
Bagaimana model harus menggunakan tools. Opsi: auto, any, tool (tool tertentu).
top_p
number
Parameter nucleus sampling. Gunakan temperature atau top_p, bukan keduanya.
top_k
integer
Hanya ambil sampel dari K opsi teratas untuk setiap token.
stop_sequences
array
Urutan stop kustom yang akan menyebabkan model berhenti menghasilkan.
metadata
object
Metadata yang dilampirkan ke permintaan untuk tujuan pelacakan.

Respons

id
string
Pengidentifikasi message yang unik.
type
string
Selalu message.
role
string
Selalu assistant.
content
array
Array blok konten (text, thinking, tool_use).
model
string
Model yang digunakan.
stop_reason
string
Alasan generation berhenti (end_turn, max_tokens, tool_use).
usage
object
Penggunaan token dengan input_tokens dan output_tokens.
curl -X POST "https://api.lemondata.cc/v1/messages" \
  -H "x-api-key: sk-your-api-key" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-4-6",
    "max_tokens": 1024,
    "system": "You are a helpful assistant.",
    "messages": [
      {"role": "user", "content": "Hello, Claude!"}
    ]
  }'
{
  "id": "msg_abc123",
  "type": "message",
  "role": "assistant",
  "content": [
    {
      "type": "text",
      "text": "Hello! How can I help you today?"
    }
  ],
  "model": "claude-sonnet-4-6",
  "stop_reason": "end_turn",
  "usage": {
    "input_tokens": 15,
    "output_tokens": 10
  }
}

Vision Input Example

For Claude models with vision support, place images inside messages[].content as structured image blocks.
{
  "model": "claude-sonnet-4-6",
  "max_tokens": 1024,
  "messages": [
    {
      "role": "user",
      "content": [
        {
          "type": "text",
          "text": "Please describe this image."
        },
        {
          "type": "image",
          "source": {
            "type": "url",
            "url": "https://example.com/demo.jpg"
          }
        }
      ]
    }
  ]
}
{
  "model": "claude-sonnet-4-6",
  "max_tokens": 1024,
  "messages": [
    {
      "role": "user",
      "content": [
        {
          "type": "text",
          "text": "Please describe this image."
        },
        {
          "type": "image",
          "source": {
            "type": "base64",
            "media_type": "image/jpeg",
            "data": "/9j/4AAQSkZJRgABAQ..."
          }
        }
      ]
    }
  ]
}

Contoh Extended Thinking

message = client.messages.create(
    model="claude-opus-4-6",
    max_tokens=16000,
    thinking={
        "type": "enabled",
        "budget_tokens": 10000
    },
    messages=[{"role": "user", "content": "Solve this math problem..."}]
)

for block in message.content:
    if block.type == "thinking":
        print(f"Thinking: {block.thinking}")
    elif block.type == "text":
        print(f"Response: {block.text}")

Anthropic Message Batches

LemonData kini juga menyediakan alur native Anthropic Message Batches di samping /v1/messages. Rute yang tersedia:
  • POST /v1/messages/batches
  • GET /v1/messages/batches
  • GET /v1/messages/batches/:message_batch_id
  • GET /v1/messages/batches/:message_batch_id/results
  • POST /v1/messages/batches/:message_batch_id/cancel
  • DELETE /v1/messages/batches/:message_batch_id
Catatan operasional:
  • Gunakan API key LemonData yang sama bersama header native Anthropic.
  • Jika item batch mereferensikan file_id, sertakan juga anthropic-beta: files-api-2025-04-14.
  • Batch job mempertahankan bentuk request/response native Anthropic, sementara LemonData melacak siklus settlement internalnya.