통합 가이드인증엔드포인트 규약모델오류
StarmodelStarmodel
시작하기API 참조

인증

Starmodel의 모든 엔드포인트는 API 키가 필요하며, Authorization 요청 헤더로 전달합니다.

API 키 발급

  1. API Keys 페이지 열기 — Starmodel 콘솔에 로그인한 뒤 API Keys 페이지를 엽니다.
  2. 새 키 생성 — 새 키 를 클릭합니다. 전체 키 문자열(sk-…)은 한 번만 표시됩니다 — 즉시 시크릿 저장소에 복사하세요.
  3. 키 이름 지정 및 관리 — 용도를 기억할 수 있도록 설명을 추가하세요. 같은 페이지에서 언제든 키를 비활성화·재활성화·삭제할 수 있습니다.

전체 키는 생성 시 한 번만 표시됩니다. 분실하면 복구할 수 없으니 — 기존 키를 비활성화하고 새 키를 생성하세요.

인증된 요청 보내기

키를 Bearer 토큰으로 Authorization 헤더에 포함합니다:

Authorization: Bearer <API Key>

최소 요청 예시:

curl https://api.starmodel.ai/v1/chat/completions \  -H "Authorization: Bearer $API_KEY" \  -H "Content-Type: application/json" \  -d '{    "model": "당신의 모델 ID",    "messages": [      { "role": "user", "content": "안녕하세요" }    ]  }'

동일한 헤더가 모든 엔드포인트에 적용됩니다 — 채팅, 이미지, 동영상, 음성, 그리고 GET /v1/models.

SDK 설정

대부분의 OpenAI 호환 SDK는 base_url 재정의를 지원합니다. Starmodel로 지정하고 키를 전달하세요:

from openai import OpenAIclient = OpenAI(    api_key=os.environ["API_KEY"],    base_url="https://api.starmodel.ai/v1",)
import OpenAI from "openai";const client = new OpenAI({  apiKey: process.env.API_KEY,  baseURL: "https://api.starmodel.ai/v1",});

모범 사례

  • 키를 소스 관리에 커밋하지 마세요. 환경 변수, gitignore된 .env 파일 또는 시크릿 매니저를 사용하세요.
  • 주기적으로 교체하세요. 팀원이 떠나거나 유출이 의심되거나 정해진 주기마다 새 키를 생성하고 기존 키를 비활성화하세요.
  • 워크로드마다 키 하나. 서비스별 키는 유출 시 범위를 좁혀 개별 비활성화하기 쉬워 다른 트래픽에 영향을 주지 않습니다.
  • 서버 측에서만 사용하세요. 키를 데이터베이스 비밀번호처럼 다루세요 — 브라우저 번들이나 모바일 앱에 포함하지 마세요.

오류

인증 실패 시 JSON 오류 본문이 반환됩니다:

{  "error": {    "code": "unauthorized",    "message": "unauthorized",    "type": "error"  }}

상태 코드:

상태의미
401API 키가 없거나 유효하지 않습니다.
403키가 비활성화되었거나 요청한 리소스에 접근 권한이 없습니다.
429요청 한도를 초과했습니다 — Retry-After 헤더에 표시된 시간만큼 기다린 후 재시도하세요.

On this page

API 키 발급인증된 요청 보내기SDK 설정모범 사례오류
Authorization: Bearer <API Key>
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["API_KEY"],
    base_url="https://api.starmodel.ai/v1",
)
import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.API_KEY,
  baseURL: "https://api.starmodel.ai/v1",
});
{
  "error": {
    "code": "unauthorized",
    "message": "unauthorized",
    "type": "error"
  }
}
curl https://api.starmodel.ai/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "당신의 모델 ID",
    "messages": [
      { "role": "user", "content": "안녕하세요" }
    ]
  }'