시간과 형식
JSON과 텍스트
- 요청 본문과 응답 본문은
Content-Type: application/json헤더가 붙은 UTF-8 JSON이에요. 파일 업로드에는multipart/form-data형식을 써요. - 필드 이름과 열거형 값은
snake_case형식이에요. 예:next_retry_at,index_failed. - 오류 메시지와 API의 텍스트는 영어예요. 카드 제목처럼 직접 작성한 텍스트는 어떤 언어든 작성한 그대로 반환돼요.
시간
모든 시간은 UTC 기준의 RFC 3339 타임스탬프예요.
{"created_at": "2026-10-24T10:00:00Z"}
- 새 필드는 위처럼
Z를 붙인 짧은 형식을 사용해요. - 예전부터 있던 일부 필드는 초의 소수 부분이 최대 여섯 자리인
2026-10-24T10:00:00.123456+00:00형식을 써요. UTC 기준으로 같은 시각이에요. 두 형식 모두 표준 RFC 3339 파서로 파싱하고, 타임스탬프를 문자열로 비교하지 마세요. - 이름이
_at으로 끝나는 모든 필드는 타임스탬프예요.
보내는 시간에는 시간대 오프셋이 있어야 해요. Z 또는 +02:00 같은 숫자 오프셋을 쓰세요. 오프셋이 없는 시간은
모호하므로 422 상태와 validation.failed 코드를 반환해요. Sursa는 받은 모든 시간을
UTC로 변환해요.
const since = new Date(Date.now() - 24 * 3600 * 1000).toISOString(); // "2026-10-23T10:00:00.000Z"쿼리 문자열에서 +는 %2B로 써야 해요. 그러지 않으면 공백으로 읽혀요. 시간 값을 URL 인코딩하거나 Z를 사용하세요.
날짜, 기간, 개수
| 종류 | 형식 | 예 |
|---|---|---|
| 시간 없는 날짜 | 이름이 _date로 끝나는 필드에 YYYY-MM-DD 형식 | "due_date": "2026-11-01" |
| 기간 | 정수. 단위는 필드 이름에 들어 있어요 | "interval_days": 90, "timeout_seconds": 30 |
| 개수 | 이름이 _count로 끝나는 필드에 정수 | "part_count": 12 |
| 참 또는 거짓 | 불리언. is_ 없이 형용사로 이름을 지어요 | "active": true, "sensitive": false |
금액
재무 관련 응답의 금액은 정밀도가 손실되지 않도록 부동 소수점 숫자가 아니라 "1250.00" 같은 십진수 문자열이에요.
통화는 "EUR" 같은 ISO 4217 코드로 된 별도의 필드예요. 금액은 사용하는 언어의 십진수 타입으로 파싱하세요.
ID
ID는 객체에 따라 문자열이거나 정수예요. 객체 ID를 참고하세요.
열거형
상태처럼 값이 정해진 필드는 문자열이에요. 응답의 모든 열거형에는 이후 버전에서 새 값이 추가될 수 있어요. 모르는 값은 “기타”로 처리하세요. 버전과 호환성을 참고하세요.
null 값과 생략된 필드
null은 “값 없음”을 뜻해요. 담당자가 없는 카드는"owner_id": null이에요.- 이 객체나 이 요청에 해당하지 않는 필드는 응답에서 생략될 수 있어요. 항상 있는 필드는 API 레퍼런스에 표시되어 있어요.
PATCH요청에서 보내지 않은 필드는 값이 그대로 유지돼요. 레퍼런스에null이 허용된다고 적힌 필드는null을 보내 값을 지우세요.