홈시작하기HTTP 키로 등록하기디스코드 없이 서버 등록하기디스코드로 서버 등록하기시드 보고와 차단버전 확인과 426인증과 서버 키차단 모델오류 처리요청 한도버전과 호환성POST /v1/servers/claimPOST /v1/servers/reportPOST /v1/servers/revokePOST /plugin/v1/claimPOST /plugin/v1/reportGET /plugin/v1/versionGET /maps/{seed}GET /jobs/{seed}GET /seedsGET /stats/overviewGET /stats/protectionAPI 변경 내역
차단 API
POST
/api/v1/servers/claim
디스코드 없이 게임 서버에서 바로 서버 키를 받습니다. 요청을 보낸 IP와 본문의 포트에 SCP:SL 서버가 실행 중인지 확인한 뒤에만 발급됩니다.
요청 헤더
| 헤더 | 값 | 설명 |
|---|---|---|
| Content-Type | application/json | UTF-8 JSON |
| Authorization | Bearer slsrv_… | 선택. 같은 IP:포트의 사용 중인 등록을 교체할 때 기존 서버 키를 보냅니다. |
| User-Agent | MyServer/1.0 | 권장. 구현 이름과 버전. 요청 기록에 남아 클라이언트를 구분하는 데 사용됩니다. |
요청 본문
| 필드 | 위치 | 타입 | 필수 | 설명 |
|---|---|---|---|---|
| port | body | integer | 필수 | 1..65535. 게임 서버 포트. 이 포트로 확인 요청을 보냅니다. |
| clientName | body | string | 선택 | 1..64자. 관리 목록에 표시될 이름. |
| gameVersion | body | string | 선택 | 1..32자. |
응답
| 상태 | 본문 | 언제 |
|---|---|---|
| 200 | {"status":"verified","serverId":"8b1c…-uuid","credential":"slsrv_…","issuedAt":"2026-09-16T08:00:00Z"} | 등록 완료. credential은 이 응답에서 한 번만 제공됩니다. 같은 IP:포트의 이전 직접 등록은 폐기됩니다. |
| 400 | {"error":"invalid request"} | 요청 형식 오류. 포트가 1..65535 범위인지 확인하세요. |
| 403 | {"error":"no game server"} | 해당 주소에서 SCP:SL 서버가 응답하지 않습니다. 포트가 맞는지, 게임 서버가 실행 중인지, 요청을 게임 서버에서 보냈는지 확인하세요. 사설 주소와 루프백 주소는 {"error":"private address"}로 거절됩니다. 이 응답은 발급 간격을 소모하지 않으므로 수정 후 바로 다시 요청할 수 있습니다. |
| 409 | {"error":"address in use"} | 같은 IP:포트에 사용 중인 등록이 있고 기존 서버 키를 보내지 않았습니다. 기존 서버 키를 Authorization: Bearer로 함께 보내세요. 기존 등록이 1시간 이상 보고가 없으면 서버 키 없이도 교체됩니다. |
| 429 | {"error":"too many credentials","live":3,"max":3} | 한도 초과. 서버 키는 IP당 5분에 하나씩 발급되며, 사용 중인 서버 키는 IP당 최대 3개입니다. 사용 중인 서버 키는 회수되지 않으므로, 사용하지 않는 등록이 만료되기를 기다리거나 같은 IP:포트로 다시 등록해 교체하세요. 발급 간격 초과 시 응답 본문은 {"error":"rate limited"}입니다. |
| 503 | {"error":"probe unavailable"} | 서버 측에서 확인에 실패했거나({"error":"probe unavailable"}) 데이터베이스에 일시적으로 연결할 수 없습니다({"error":"db unavailable"}). 발급 간격을 소모하지 않으므로 잠시 후 다시 요청하세요. 거절 응답이 아닙니다. |
응답 필드
| 필드 | 타입 | null | 설명 |
|---|---|---|---|
| status | string | 아님 | 항상 verified 입니다. |
| serverId | string | 아님 | 등록된 서버의 공개 ID(UUID). 문의할 때 이 값을 알려 주면 됩니다. |
| credential | string | 아님 | 서버 키. 이 응답에서 한 번만 제공됩니다. slsrv_ 로 시작합니다. |
| issuedAt | string | 아님 | 발급 시각. ISO-8601 UTC. |
예시
curl -X POST https://slmaps.com/api/v1/servers/claim -H "User-Agent: MyServer/1.0" -H "Content-Type: application/json" -d "{\"port\":7777,\"clientName\":\"my-server\",\"gameVersion\":\"14.2.7\"}"요청 예시
{
"port": 7777,
"clientName": "my-server",
"gameVersion": "14.2.7"
}응답 예시
{
"status": "verified",
"serverId": "8b1c…-uuid",
"credential": "slsrv_…",
"issuedAt": "2026-09-16T08:00:00Z"
}플러그인 동작
요청은 게임 서버가 실행 중인 머신에서 보내야 합니다. 요청을 보낸 주소가 그대로 등록 주소가 됩니다. 200이면 credential을 저장하고 시드 보고를 시작합니다. 403은 주소 문제이므로 같은 요청을 반복해도 결과가 같습니다. 409는 기존 서버 키를 헤더에 넣어 다시 요청합니다. 429와 503은 재시도 간격을 늘려 다시 요청합니다. 서버 확인은 IP당 분당 10회까지입니다.
SLMAPS는 SCP: Secret Laboratory의 시드 지도 뷰어입니다. 이 문서는 slmaps.com의 공개 API를 설명합니다.slmaps.com ·