API 레퍼런스
릴리스별 JavaScript source map 업로드, 조회, 삭제 API입니다.
Authorization: Bearer <keyId>.<secret> 형식의 프로젝트 키를 사용합니다. POST와 DELETE에는 errors:write 또는 admin:write, GET에는 errors:write, admin:read, admin:write 중 하나가 필요합니다. 요청은 키가 속한 조직의 프로퍼티로 제한됩니다. 키당 분당 60회로 제한됩니다.
POST /api/v1/sourcemaps
GET /api/v1/sourcemaps?domain=example.com
DELETE /api/v1/sourcemaps?domain=example.com&release=web-1.2.3필드 release와 domain 또는 propertyId 중 하나를 먼저 지정하고, 각 파일마다 file과 path를 같은 순서로 반복합니다. file은 v3 source-map JSON 파일이고 path는 브라우저가 요청하는 minified 파일의 URL 또는 경로입니다.
curl -X POST https://crm.theseeker.io/api/v1/sourcemaps \
-H "Authorization: Bearer $THESEEKER_API_KEY" \
-F 'release=web-1.2.3' -F 'domain=example.com' \
-F '[email protected]/static/chunks/app.js.map;type=application/json' \
-F 'path=https://example.com/_next/static/chunks/app.js'path는 HTTP(S) URL이면 pathname만 쓰고, file:// URL이면 URL pathname을 사용합니다. /abs/path는 그대로 유지하고 ~/path는 /path로 정규화합니다. query와 hash는 제거됩니다. 소스맵은 version: 3이어야 하며 string mappings 또는 sections 배열이 있어야 합니다. 같은 프로퍼티·릴리스·경로의 업로드는 기존 파일을 교체합니다.
제한 | 값 | 초과 시 |
|---|---|---|
파일 수 | 요청당 100개 | 413 |
파일 크기 | 파일당 15 MiB | 413 |
요청 크기 | 요청당 40 MiB | 413 |
릴리스 파일 | 릴리스당 1,000개 | 409 |
저장 공간 | 프로퍼티당 압축 기준 1 GiB | 409 |
요청 빈도 | 키당 분당 60회 | 429, |
성공하면 201과 함께 다음 형태를 반환합니다.
{"release":"web-1.2.3","propertyId":"...","uploaded":[{"path":"/_next/static/chunks/app.js","size":12345,"sha256":"..."}]}프로퍼티 선택자에 release를 생략하면 릴리스별 요약을 반환합니다.
curl -sS 'https://crm.theseeker.io/api/v1/sourcemaps?domain=example.com' \
-H "Authorization: Bearer $THESEEKER_API_KEY"응답은 { "releases": [{ "release", "files", "totalSize", "lastUploadedAt" }] }입니다. release를 지정하면 해당 릴리스의 파일 목록을 받습니다.
curl -sS 'https://crm.theseeker.io/api/v1/sourcemaps?domain=example.com&release=web-1.2.3' \
-H "Authorization: Bearer $THESEEKER_API_KEY"파일 항목은 path, size, compressedSize, sha256, createdAt을 포함합니다.
curl -X DELETE 'https://crm.theseeker.io/api/v1/sourcemaps?domain=example.com&release=web-1.2.3' \
-H "Authorization: Bearer $THESEEKER_API_KEY"성공 응답은 { "deleted": 3 }처럼 삭제한 파일 수를 반환합니다. propertyId로도 프로퍼티를 지정할 수 있습니다.
HTTP | 코드 | 설명 |
|---|---|---|
400 |
| release, 프로퍼티 선택자 또는 multipart 필드가 잘못됨 |
400 |
| v3 source-map JSON이 아니거나 필수 필드가 없음 |
401 |
| 인증 정보가 없거나 유효하지 않음 |
403 |
| 해당 작업의 scope가 없음 |
404 |
| 키 조직에 속한 프로퍼티를 찾을 수 없음 |
409 |
| 릴리스 파일 수 한도 초과 |
409 |
| 프로퍼티 저장 용량 초과 |
413 |
| 한 요청의 파일 수 초과 |
413 |
| 파일 크기 초과 |
413 |
| 전체 요청 크기 초과 |
429 |
| 키당 분당 요청 한도 초과, |
인증이나 scope 오류는 공통 API 오류 envelope를 사용합니다. 소스맵 파일을 공개 사이트에 남기지 마세요. 업로드 후 빌드의 .map 파일을 삭제해야 합니다.
이 페이지가 도움이 되었나요?