모든 /v1/* 엔드포인트는 인증이 필요합니다. ARouter는 네 가지 방법을 지원합니다: 주요 LLM SDK를 위한 세 가지 API key 기반 방법, 그리고 암호화폐 지갑을 가진 AI 에이전트를 위한 지갑 기반 인증입니다.
인증 방법
Bearer Token
쿼리 파라미터
Wallet JWT (SIWx)
OpenAI SDK, DeepSeek SDK, Mistral SDK 및 대부분의 OpenAI 호환 클라이언트에서 사용됩니다.Authorization: Bearer lr_live_xxxx
from openai import OpenAI
client = OpenAI(
base_url="https://api.arouter.ai/v1",
api_key="lr_live_xxxx", # Bearer token으로 전송
)
Google Gemini SDK에서 사용됩니다.GET /v1beta/models?key=lr_live_xxxx
import google.generativeai as genai
genai.configure(
api_key="lr_live_xxxx", # ?key= 파라미터로 전송
transport="rest",
client_options={"api_endpoint": "https://api.arouter.ai"},
)
암호화폐 지갑을 가진 AI 에이전트(EVM 또는 Solana)에서 사용됩니다. 지갑은 SIGN-IN-WITH-X로 인증하고 지갑 JWT를 Bearer token으로 사용합니다.Authorization: Bearer eyJhbGciOiJIUzI1NiIs...
지갑 JWT는 SIWx를 통해 POST /v1/x402/auth에서 얻거나, 첫 번째 성공적인 x402 결제 응답에서 얻습니다.전체 지갑 흐름은 x402 결제 가이드를 참조하세요.
처음 세 가지 방법은 동일한 ARouter API key를 사용합니다. 게이트웨이는 어떤 방법이 사용되고 있는지 자동으로 감지합니다. 지갑 사용자는 별도의 경로를 따릅니다: SIWx/x402가 지갑 JWT를 생성하고, 이후 요청은 Authorization: Bearer <jwt>를 사용합니다.
Key 유형
| Key 유형 | 형식 | 설명 |
|---|
| 관리 Key | lr_mgmt_xxxx | 관리 API를 통해 API key를 생성하고 관리합니다. |
| API Key | lr_live_xxxx | LLM 요청을 보냅니다. 공급자/모델 제한 및 지출 한도를 설정할 수 있습니다. |
관리 key로 생성된 API key는 테넌트 범위를 초과하지 않는 선에서 권한을 좁히는 것만 가능합니다.
자세한 내용은 Key 관리 가이드를 참조하세요.
오류 응답
인증에 실패하면 다음 응답 중 하나를 받게 됩니다:
// key가 누락되거나 형식이 잘못된 경우
{
"error": {
"message": "missing or invalid Authorization header",
"type": "authentication_error"
}
}
// 유효하지 않은 key
{
"error": {
"message": "invalid api key",
"type": "authentication_error"
}
}
두 경우 모두 HTTP 401 Unauthorized를 반환합니다.