레퍼런스개발자 레퍼런스
API 레퍼런스
슈츠 API를 사용하여 외부 시스템과 연동하세요.
개요
슈츠 API로 할 수 있는 것
| 기능 | 설명 |
|---|---|
| 데이터 조회 | 데이터모델의 행 데이터를 조회하고 검색 |
| 데이터 생성/수정 | 외부 시스템에서 슈츠로 데이터 동기화 |
| 실시간 알림 | 웹훅으로 데이터 변경 이벤트 수신 |
| 자동화 연동 | Zapier, Make 등과 연결하여 워크플로우 확장 |
활용 예시
- CRM 연동: 웹사이트 폼에서 수집한 리드를 슈츠에 자동 등록
- 대시보드: 슈츠 데이터를 외부 BI 도구에서 시각화
- ERP 연동: 슈츠의 주문 데이터를 ERP 시스템에 동기화
- 모바일 앱: 슈츠를 백엔드로 사용하는 앱 개발
빠른 시작
1단계: API 키 발급
- 워크스페이스 설정 → 개발자 설정 이동
- + 새 API 키 클릭
- 이름과 권한 범위 설정
- 생성된 키를 안전하게 보관
API 키는 생성 시에만 전체 키를 확인할 수 있습니다. 분실 시 새로 생성해야 합니다.
2단계: 첫 번째 API 호출
curl -X GET "https://suits.work/api/v1/datamodels" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"3단계: 응답 확인
{
"data": [
{
"id": "dm_abc123",
"title": "고객",
"icon": { "type": "emoji", "name": "👤" },
"description": "고객 정보 관리"
}
],
"meta": {
"total": 1
}
}Base URL
모든 API 요청의 기본 URL:
https://suits.work/api/v1인증
모든 API 요청에 Authorization 헤더를 포함해야 합니다.
Authorization: Bearer sk_live_xxxxxxxxxxxx인증 예시
curl -X GET "https://suits.work/api/v1/datamodels" \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxx" \
-H "Content-Type: application/json"주요 엔드포인트
블록 (Blocks)
| 메서드 | 엔드포인트 | 설명 | 권한 |
|---|---|---|---|
| GET | /blocks | 블록 목록/검색 | read |
| GET | /blocks/:id | 블록 상세 조회 | read |
| POST | /blocks | 새 블록 생성 | write |
| PATCH | /blocks/:id | 블록 수정 | write |
| DELETE | /blocks/:id | 블록 삭제 | write |
데이터모델 (DataModels)
| 메서드 | 엔드포인트 | 설명 | 권한 |
|---|---|---|---|
| GET | /datamodels | 데이터모델 목록 조회 | read |
| GET | /datamodels/:id | 데이터모델 구조 조회 | read |
| POST | /datamodels | 데이터모델 생성 | write |
| PATCH | /datamodels/:id | 데이터모델 수정 | write |
| DELETE | /datamodels/:id | 데이터모델 삭제 | write |
행 (Rows)
| 메서드 | 엔드포인트 | 설명 | 권한 |
|---|---|---|---|
| GET | /datamodels/:id/rows | 행 목록 조회 | read |
| POST | /datamodels/:id/rows | 행 생성 (단건 또는 배치) | write |
| PATCH | /datamodels/:id/rows/:rowId | 행 수정 | write |
| DELETE | /datamodels/:id/rows/:rowId | 행 삭제 | write |
워크플로우 (Workflows)
| 메서드 | 엔드포인트 | 설명 | 권한 |
|---|---|---|---|
| GET | /workflows | 워크플로우 목록 조회 | read |
| GET | /workflows/:id | 워크플로우 상세 조회 | read |
| POST | /workflows | 워크플로우 생성 | write |
| PATCH | /workflows/:id | 워크플로우 수정 | write |
| DELETE | /workflows/:id | 워크플로우 삭제 | write |
| POST | /workflows/:id/run | 워크플로우 실행 | write |
통계 (Stats)
| 메서드 | 엔드포인트 | 설명 | 권한 |
|---|---|---|---|
| GET | /stats | 통계 정의 목록 조회 | read |
| GET | /stats/:id | 통계 정의 상세 조회 | read |
| POST | /stats | 통계 정의 생성 | write |
| PATCH | /stats/:id | 통계 정의 수정 | write |
| DELETE | /stats/:id | 통계 정의 삭제 | write |
| POST | /stats/:id/run | 통계 실행 | write |
응답 형식
성공 응답 (단일)
{
"data": { ... }
}성공 응답 (목록)
{
"data": [...],
"meta": {
"total": 100,
"limit": 20,
"offset": 0,
"hasMore": true
}
}에러 응답
{
"error": {
"code": "ERROR_CODE",
"message": "에러 메시지"
}
}주요 에러 코드
| HTTP | 코드 | 설명 |
|---|---|---|
| 400 | validation_error | 요청 데이터 형식 오류 |
| 401 | unauthorized | 인증 실패 |
| 403 | forbidden | 권한 부족 |
| 404 | not_found | 리소스 없음 |
| 429 | rate_limited | 요청 제한 초과 |
| 500 | internal_error | 서버 오류 |
속도 제한 (Rate Limiting)
API 안정성을 위해 요청 속도를 제한합니다.
| 플랜 | 요청 제한 |
|---|---|
| Free | 100 요청/분 |
| Pro | 1,000 요청/분 |
| Business | 10,000 요청/분 |
| Enterprise | 협의 |
응답 헤더
X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 999
X-RateLimit-Reset: 1609459200제한 초과 시
{
"success": false,
"error": {
"code": "rate_limited",
"message": "Too many requests",
"retryAfter": 60
}
}웹훅
데이터 변경 시 실시간으로 알림을 받을 수 있습니다.
지원 이벤트
row.created- 새 행 생성row.updated- 행 수정row.deleted- 행 삭제page.created- 새 페이지 생성page.updated- 페이지 수정page.deleted- 페이지 삭제
SDK 및 도구
공식 SDK (예정)
- JavaScript/TypeScript
- Python
- Go
서드파티 연동
- Zapier: 1,000+ 앱과 연동
- Make (Integromat): 비주얼 자동화
- n8n: 오픈소스 자동화
이 섹션에서 다루는 내용
지원
API 관련 문의:
- 이메일: [email protected]
- 개발자 포럼: community.suits.work