Drawspell

Drawspell의 API

앱을 Drawspell으로 연결하세요.

기본 URLhttps://drawspell.space/api/v1

인증현황

개발자 포털에 로그인 및 대시보드에서 API 키 생성.

모든 API 요청을 가진 Authorization 헤더에 보냅니다.

Authorization: Bearer YOUR_API_KEY

최대 5개의 활성키를 당신의 대시보드로 관리합니다.

미스링, 무효, 또는 재조합 키는 401 인증을 반환합니다. 계정 또는 충분한 권한은 403 금지을 반환합니다.

방 만들기

선택적 사전 로드된 데크와 개인 초대를 가진 방을 만듭니다.

POST/api/v1/rooms

기타 제품

Authorization(주)
Bearer API 열쇠. 인증 및 인증를 보십시오.
Content-Type(주)
application/json
Idempotency-Key(주)
창조 당 고유; 1–128는 ASCII 문자를 볼 수 있습니다.

이름 *

기본 방에 {}을 보냅니다. 최대 160 KiB; 알 수없는 필드.

displaySpectatorLinkboolean · 옵션 정보
Defaults to true. false를 설정하여 플레이어의 spectator 링크를 숨깁니다. API는 여전히 링크를 반환합니다.
playersobject[] · 옵션 정보
4개의 개인적인 초대장까지. 각 품목은 다음을 포함합니다:
externalIdstring · (주)
플레이어 식별자. 1–128 문자; 이 요청 내에서 고유.
deckobject · 옵션 정보
이 플레이어의 개인 링크에 할당 된 데크.
deckliststring · (주)
사전 로드에 갑판 텍스트. 최대 32 KiB.
bracketinteger · 옵션 정보
1–5. 디스플레이없이 저장.
curl https://drawspell.space/api/v1/rooms \
  -H "Authorization: Bearer $DRAWSPELL_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: match-123" \
  --data '{
  "displaySpectatorLink": false,
  "players": [
    {
      "externalId": "player-1",
      "deck": {
        "decklist": "1 Sol Ring\n1 Command Tower",
        "bracket": 3
      }
    }
  ]
}'

관련 기사

playerInviteUrl공유하기
링크가있는 사람은 사용할 수있는 좌석에 가입 할 수 있습니다.
players[].joinUrl이름 *
일치하는 externalId로 보내십시오. 할당된 갑판을 적재하십시오; 좌석 예약 또는 정체 체크 없음.
spectatorLinkstring
항상 API 콜러로 돌아갑니다. 이 링크가있는 사람은 시계 할 수 있습니다. displaySpectatorLink이 거짓되면 플레이어는 앱에서 링크를 검색 할 수 없습니다.
activationExpiresAtISO 날짜
첫 번째 플레이어는 24 시간 이내에 가입해야합니다. Active 게임은이 마감일을 계속합니다.
201 창조의 방
{
  "roomId": "abc123",
  "displaySpectatorLink": false,
  "spectatorLink": "https://drawspell.space/rooms/abc123?st=…",
  "activationExpiresAt": "2026-10-10T18:00:00.000Z",
  "playerInviteUrl": "https://drawspell.space/rooms/abc123?gt=…",
  "players": [
    {
      "externalId": "player-1",
      "joinUrl": "https://drawspell.space/rooms/abc123?invite=…"
    }
  ]
}

안전 반송

최대 24 시간 동안 동일한 키와 콘텐츠를 재사용합니다. 재생은 Idempotency-Replayed: true로 200을 반환합니다. 다른 콘텐츠는 409을 반환합니다; 사라지는 방은 410를 반환합니다.

10 요청 / 분

retries 및 거부 된 요청을 포함하여 계정의 키를 통해 공유하십시오. 429에서 Retry-After 초 동안 기다리십시오.

오류 참조 상태, 코드 및 JSON 예
API 오류 코드
(주)엠씨코드 / 동작
400invalid_request

JSON, 필드 및 필수 헤더를 확인합니다.

401unauthorized

활성 API 키를 사용합니다.

403forbidden

계정 비활성화 또는 객실 : 권한이 누락되었습니다.

409idempotency_conflict

다른 콘텐츠를 위한 새로운 열쇠를 사용하십시오.

410room_gone

방이 만료되거나 삭제되었습니다. 새로운 것을 만듭니다.

413body_too_large

160 KiB 이하로 요청을 줄입니다.

415unsupported_media_type

Content-Type: application/json를 보내십시오.

429rate_limited

Retry-After 초 동안 기다립니다.

503service_unavailable

동일한 Idempotency-Key를 가진 구호.

409 오류 응답
{
  "error": {
    "code": "idempotency_conflict",
    "message": "This Idempotency-Key was already used with different content."
  }
}