API 레퍼런스고급 사용자업데이트
POST/v1/messages

API 콘솔

POST/v1/messages
키 보기

입력한 키로 실제 요청을 보내며 일반 API 요금이 적용됩니다.

Anthropic Messages

Anthropic Messages 형식으로 HTTP 요청을 보냅니다. Claude Code 설정은 관련 가이드를 참고하세요.

시작하기 전에

빠른 시작에 따라 API 키를 발급받고 직접 HTTP 호출을 허용하는 엔드포인트를 선택하세요. 예시는 x-api-key에 ICODEEASY_API_KEY를 넣고 anthropic-version 헤더를 보냅니다. YOUR_MODEL_ID를 엔드포인트에서 지원하는 모델 ID로 바꾸세요.

요청 예시

model을 지정하고 max_tokens로 출력을 제한합니다. 대화는 messages에 넣습니다.

bash
curl -sS https://api.icodeeasy.cc/v1/messages \
  -H "x-api-key: $ICODEEASY_API_KEY" \
  -H 'Content-Type: application/json' \
  -H 'anthropic-version: 2023-06-01' \
  --data '{
  "model": "YOUR_MODEL_ID",
  "max_tokens": 256,
  "messages": [
    {
      "role": "user",
      "content": "Say hello."
    }
  ]
}'

응답 읽기

content[]에서 type이 text인 블록을 읽으세요. 사용량은 usage.input_tokens와 usage.output_tokens에서 확인합니다. cache_creation_input_tokens와 cache_read_input_tokens는 각각 캐시 쓰기와 읽기 토큰 수입니다.

json
{
  "content": [
    {
      "type": "text",
      "text": "Hello!"
    }
  ],
  "stop_reason": "end_turn"
}

스트리밍 응답 예시

요청 본문에 stream: true를 설정하면 SSE로 받습니다. content_block_delta의 delta.text를 이어 붙입니다. message_delta에서 종료 이유를, message_stop에서 완료 여부를 확인하세요. HTTP 200 이후라도 SSE error 이벤트가 오면 실패로 처리합니다.

text
event: content_block_delta
data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"Hello!"}}

event: message_delta
data: {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null},"usage":{"output_tokens":4}}

event: message_stop
data: {"type":"message_stop"}

스트리밍 사용량은 message_start.message.usage와 이후의 message_delta.usage에서 읽으세요. 캐시 필드의 의미는 JSON 응답과 같습니다.