API 레퍼런스

Messages(Anthropic 형식)

POST/v1/messages

같은 Bearer 키로 제공되는 Anthropic 네이티브 전송 형식입니다. Claude Code와 공식 anthropic SDK는 base URL만 바꾸면 동작합니다 — 어댑터도, 형식 변환도 없습니다.

#요청 파라미터

  • modelstring필수

    모델 페이지의 Claude 모델 ID(예: claude-opus-5-5).

  • max_tokensinteger필수

    Anthropic 형식에서 필수 — 출력 상한입니다.

  • messagesarray필수

    Anthropic 스타일 턴: {role: user|assistant, content}.

  • systemstring선택

    시스템 프롬프트 — 여기서는 메시지 역할이 아니라 최상위 필드입니다.

  • streamboolean선택

    Anthropic 네이티브 SSE 이벤트(message_start, content_block_delta, …)를 스트리밍합니다.

  • temperaturenumber선택

    Anthropic 기준 0~1.

  • toolsarray선택

    Anthropic 도구 정의. tool_use 블록은 content에 담겨 반환됩니다.

anthropic-version 헤더

공식 API처럼 anthropic-version: 2023-06-01을 보내세요. 여기서는 Authorization: Bearer를 사용할 수 있으며, 기본 Anthropic SDK를 위해 x-api-key도 허용됩니다.

#관련 오류

  • 400 invalid_request_error본문 형식이 잘못되었거나 이 모델이 지원하지 않는 파라미터입니다.
  • 401Bearer 토큰이 유효하지 않거나 없습니다. 이 경로에는 error.code가 없으므로 상태 코드로 판단하세요.
  • 402 insufficient_user_quota지갑 잔액이 사전 차감 추정액보다 부족합니다.
  • 429키별 속도 제한입니다. 본문은 비어 있으며 Retry-After만큼 기다리세요. insufficient_user_quota가 포함된 429는 속도 제한이 아니라 일일 지출 한도입니다.
  • 503 model_not_found알 수 없는 모델이거나, 현재 이 모델을 제공하는 정상 채널이 없습니다.

전체 오류 코드 표 →

#요청 예시

curl https://www.aisplice.store/v1/messages \
  -H "Authorization: Bearer sk-YOUR_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-opus-5-5",
    "max_tokens": 512,
    "messages": [{"role": "user", "content": "Say hello."}]
  }'

#응답

response.json
{
  "id": "msg_…",
  "type": "message",
  "role": "assistant",
  "model": "claude-opus-5-5",
  "content": [{"type": "text", "text": "Hello!"}],
  "stop_reason": "end_turn",
  "usage": {"input_tokens": 10, "output_tokens": 5}
}

아직 해결되지 않았나요?

요청 ID나 오류 메시지를 보내 주시면 확인해 드리겠습니다.