Language

API 레퍼런스

apikey.sh는 OpenAI 프로토콜을 그대로 사용합니다. OpenAI와 동작하는 SDK·프레임워크·도구라면 base_url만 바꾸면 그대로 동작합니다.

빠른 시작

대시보드에서 키를 만들고 환경 변수에 넣은 뒤 base URL을 지정하세요:
from openai import OpenAI

client = OpenAI(
    api_key="sk-ak-...",                  # your key from apikey.sh
    base_url="https://apikey.sh/v1",      # change only this line
)

resp = client.chat.completions.create(
    model="claude-sonnet-5",
    messages=[{"role": "user", "content": "Hello!"}],
)
print(resp.choices[0].message.content)

Base URL

아래 모든 도메인에서 동일한 API 키가 작동합니다 — 원하는 것을 사용하세요.
https://apikey.sh/v1정상
https://api.onie.net/v1정상
Anthropic SDK는 /v1 없이 base URL을 사용합니다(예: https://apikey.sh).

인증

헤더에 키를 담아 보내세요:
Authorization: Bearer sk-ak-...

# or, with the Anthropic SDK:
x-api-key: sk-ak-...
키는 생성 시 한 번만 표시됩니다. 분실했다면 새로 만들고 기존 키를 폐기하세요 — 폐기는 즉시 적용됩니다.

Endpoint

POST/v1/chat/completions완성 생성 (SSE streaming 및 tool calling 지원)
POST/v1/embeddingsRAG와 시맨틱 검색을 위한 embedding 생성
POST/v1/images/generations이미지 생성 (gpt-image-* 모델)
GET/v1/models현재 키로 사용 가능한 모델 목록 조회

Streaming

stream: true를 추가하면 SSE로 토큰을 실시간 수신합니다:
stream = client.chat.completions.create(
    model="claude-sonnet-5",
    messages=[{"role": "user", "content": "Write a short poem"}],
    stream=True,
)
for chunk in stream:
    print(chunk.choices[0].delta.content or "", end="")

Prompt caching

지원 모델(GPT-5.x 계열)에서는 프롬프트의 반복 접두부가 자동으로 캐시되어 캐시 요금으로 청구되며, 신규 토큰보다 약 90% 저렴합니다. 코드는 바꿀 필요가 없고, 캐시된 토큰 수는 대시보드의 사용량에서 확인할 수 있습니다.응답에 usage.prompt_tokens_details.cached_tokens가 포함되어 직접 대조할 수 있습니다.

키별 한도

키마다 지출 한도와 허용 모델 목록을 지정할 수 있습니다. 프로젝트나 팀원과 키를 공유하면서도 한쪽이 예산을 다 쓰는 일을 막는 안전한 방법입니다. 대시보드 → API 키에서 설정하세요.

오류 코드

401잘못된 키, 폐기된 키 또는 정지된 계정
402크레딧 부족 — 대시보드에서 충전하세요
403이 키의 허용 목록에 없는 모델
429키 요청 한도 초과
5xx업스트림 제공사 오류 — 몇 초 후 다시 시도하세요

사용 가능한 모델

37개 모델이 운영 중입니다. 기계 판독용 목록은 GET /v1/models 또는 /api/models에서 제공합니다 (JSON, 인증 불필요).