API

API 인증

API Key와 JWT를 사용해 DisHost REST API를 호출하고 인증하는 방법을 안내합니다.

DisHost API를 사용하면 웹 대시보드에서 제공하는 모든 기능을 외부 스크립트, CLI, CI/CD 파이프라인에서 프로그래밍 방식으로 제어할 수 있습니다.


인증 방식 비교

인증 방식권장 사용 환경요청 헤더 예시
API KeyCLI, GitHub Actions, 자동화 스크립트x-api-key: dsh_live_...
JWT (Bearer Token)웹 대시보드 세션 (Discord 로그인 기반)Authorization: Bearer eyJ...

일반적인 개발 및 자동화 환경에서는 API Key 방식을 사용하는 것을 권장합니다.


API Key 사용 가이드

1. 키 발급

  1. 대시보드 설정 페이지로 이동합니다.
  2. API Keys 섹션으로 이동합니다.
  3. 키 용도를 알 수 있는 이름(예: GitHub Actions, 배포 스크립트)을 입력하고 Create를 누릅니다.
  4. 생성된 키 문자열(dsh_live_로 시작)을 복사해 안전한 곳에 보관합니다. 창을 닫으면 키 값을 다시 조회할 수 없습니다.

2. API 호출 예제

요청 헤더에 x-api-key 필드를 추가하여 호출합니다.

# 내 봇 목록 조회
curl -H "x-api-key: dsh_live_abc123..." \
  https://api.dishost.kr/api/v1/bots

# 새 배포 트리거
curl -X POST https://api.dishost.kr/api/v1/deployments \
  -H "x-api-key: dsh_live_abc123..." \
  -H "Content-Type: application/json" \
  -d '{"botId":"abc123"}'

3. 키 관리 수칙

  • 보안 보관: API Key는 데이터베이스 비밀번호와 같으므로 공개 GitHub 저장소 등에 커밋하지 말고 환경 변수로 관리하세요.
  • 폐기: 사용하지 않는 키나 유출이 의심되는 키는 대시보드에서 즉시 삭제(Delete)하세요.

Public API (인증 불필요)

서비스 상태 점검 및 공개 정보는 인증 헤더 없이도 호출할 수 있습니다.

# 서버 헬스체크
curl https://api.dishost.kr/api/v1/health

# API 버전 확인
curl https://api.dishost.kr/api/v1/version

# 템플릿 목록 조회
curl https://api.dishost.kr/api/v1/templates

참고

Public API는 악의적인 트래픽 방지를 위해 IP당 15분당 100회로 속도 제한(Rate Limit)이 적용됩니다.


기본 엔드포인트 URL

https://api.dishost.kr/api/v1

모든 API 엔드포인트는 이 기본 URL을 베이스로 호출합니다.