API
API 인증
API Key와 JWT를 사용해 DisHost REST API를 호출하고 인증하는 방법을 안내합니다.
DisHost API를 사용하면 웹 대시보드에서 제공하는 모든 기능을 외부 스크립트, CLI, CI/CD 파이프라인에서 프로그래밍 방식으로 제어할 수 있습니다.
인증 방식 비교
| 인증 방식 | 권장 사용 환경 | 요청 헤더 예시 |
|---|---|---|
| API Key | CLI, GitHub Actions, 자동화 스크립트 | x-api-key: dsh_live_... |
| JWT (Bearer Token) | 웹 대시보드 세션 (Discord 로그인 기반) | Authorization: Bearer eyJ... |
일반적인 개발 및 자동화 환경에서는 API Key 방식을 사용하는 것을 권장합니다.
API Key 사용 가이드
1. 키 발급
- 대시보드 설정 페이지로 이동합니다.
- API Keys 섹션으로 이동합니다.
- 키 용도를 알 수 있는 이름(예:
GitHub Actions,배포 스크립트)을 입력하고 Create를 누릅니다. - 생성된 키 문자열(
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을 베이스로 호출합니다.