# 한도

> 본문 크기, 필드 수, 레이트 리밋, 월간 사용량, 웹훅, 보관 기간.

모든 워크스페이스와 폼에 적용되는 고정 한도입니다. 월간 사용량과 웹훅 엔드포인트 수만 플랜에 따라 달라집니다.

## 제출

| 한도 | 값 | 초과 시 |
| --- | --- | --- |
| 요청 본문 | 256 KB | `413 payload_too_large` |
| 저장된 필드, JSON으로 직렬화한 크기 | 64 KB | `413 payload_too_large` |
| 제출당 필드 수 | 100 | `413 payload_too_large` |
| 필드 이름 길이 | 128자 | `413 payload_too_large` |
| 필드 값 크기 | 16 KB | `413 payload_too_large` |
| JSON 깊이 | 최상위 객체를 포함해 3단계 | `422 too_deep` |
| `_subject` | 200자 | 길이에 맞춰 자름 |
| 멱등성 키 | 255자, 24시간 보관 | `400 invalid_body` |
| 파일 | 아직 지원하지 않음 | `422 files_not_supported` |

## 폼 정의

| 한도 | 값 |
| --- | --- |
| 폼당 필드 수 | 100 |
| 필드당 옵션 수 | 500 |
| 폼당 옵션 수 | 2,000 |
| 필드 ID | 64자, 소문자 snake_case |
| 레이블 | 200자 |
| 도움말 | 1,000자 |
| 텍스트 필드 | 최대 10,000자, 기본값 1,000자 |
| 긴 텍스트 필드 | 최대 16,000자, 기본값 10,000자 |
| 패턴 | 200자 |
| 폼당 허용 도메인 수 | 20 |

## 레이트 리밋

| 적용 대상 | 한도 |
| --- | --- |
| IP 하나에서 폼 하나로 보내는 POST, Standard | 분당 5건, 10초에 3건 |
| IP 하나에서 폼 하나로 보내는 POST, 그 외 프리셋 | Relaxed 분당 20건, Strict 10분마다 2건, 또는 Custom |
| IP 하나에서 모든 폼으로 보내는 POST | 분당 30건, 어떤 경우에도 분당 600건 이하 |
| 폼 하나로 오는 전체 POST | 분당 300건, 또는 Custom 상한 1~10,000건 |
| `GET /f/<formId>/schema` | IP와 폼별 분당 60건 |
| Ikiform 확인 프레임 | IP와 폼별 분당 60건 |
| REST API | 키별 60초에 100건 요청 |

자세한 내용과 허용량이 다시 채워지는 방식은 [레이트 리밋](https://ikiform.com/ko/docs/rate-limits.md)에 있습니다.

## 월간 사용량

각 워크스페이스에는 플랜에 따른 월간 제출 한도가 있습니다. [요금](https://ikiform.com/ko/pricing)을 참고하세요. 한 달은 UTC 기준 달력상의 월입니다. 수신된 제출만 집계되며, 스팸과 거부된 POST는 집계되지 않습니다.

- 워크스페이스의 알림 수신자는 한도의 80%와 100%에서 이메일을 받습니다.
- 한도의 2배에 이르면 다음 달이 되거나 업그레이드할 때까지 새 제출이 `429 quota_exceeded`로 거부되며, 워크스페이스 소유자에게 이메일이 갑니다.

### 100%와 상한 사이

|   | 현재 | 결제 기능이 켜진 후 |
| --- | --- | --- |
| 새 제출 | 평소처럼 수신 | 보류: 방문자에게는 정상적인 성공 페이지가 보이지만, 보류된 제출은 숨겨진 상태로 유지 |
| 웹훅과 이메일 | 전송 | 워크스페이스가 업그레이드할 때까지 전송하지 않음 |
| 보관 기간 | 직접 삭제할 때까지 | 30일 |

> 결제 기능은 아직 켜지지 않았습니다. 켜지기 전까지는 플랜이 없다는 이유로 거부되는 워크스페이스는 없습니다.

## 웹훅

| 한도 | 값 |
| --- | --- |
| 워크스페이스당 엔드포인트 수 | 3개, Enterprise는 제한 없음 |
| 페이로드 크기 | 256 KB, 넘으면 `fields`가 빠지고 `truncated`가 `true` |
| 응답 제한 시간 | 15초 |
| 시도 횟수 | 약 3일 6시간 동안 9회 |
| 자동 비활성화 | 전송이 5일 동안 실패하거나 `410 Gone`을 받으면 |
| 교체 후 이전 시크릿 유효 기간 | 24시간 |
| 로그에 저장되는 응답 본문 | 4 KB |

## 알림 이메일

| 한도 | 값 |
| --- | --- |
| 폼당 시간당 이메일 수 | 50통, 이후 그 시간의 나머지는 요약 한 통 |
| 폼당 시간당 이메일 수, 생성 7일 미만 워크스페이스 | 10 |
| 이메일당 수신자 수 | 10 |
| 이메일당 표시되는 필드 수 | 20개, 값은 500자에서 자름 |

## 보관 기간

| 데이터 | 보관 기간 |
| --- | --- |
| 수신된 제출 | 직접 삭제할 때까지 |
| 스팸 제출 | 30일 |
| 보류된 제출 | 30일 |
| 웹훅 전송 | 90일 |
| 웹훅 시도 | 30일 |
| 멱등성 키 | 24시간 |

> 더 높은 한도가 필요하신가요? Enterprise에 대해 hello@ikiform.com으로 이메일을 보내 주세요.
