문서와 템플릿을 필터로 검색하기
filter 파라미터를 사용하면 문서 리스트 조회 API와 템플릿 리스트 조회 API에서 조건에 맞는 항목만 골라 조회할 수 있습니다. 필터 구문을 작성한 뒤 URL 인코딩하여 filter 파라미터에 적용해 주세요.
시작하기 전에 꼭 이해하기
- 지원하는 필터는 API마다 다릅니다. 문서 리스트 조회는 상태·제목·기간·라벨 필터를, 템플릿 리스트 조회는 제목 필터만 지원합니다.
- 문서 리스트 조회 API는 High-cost API입니다. 모든 문서를 불러온 뒤 직접 걸러내지 말고, 필터로 필요한 문서만 조회하세요. 추후 필터 옵션이 필수사항으로 변경될 수 있습니다.
- 목록 조회의 기본 사용법(페이지네이션, 응답 구조, 조회 범위)은 문서 목록 조회하기를 참고하세요.
1. 기본 사용법
필터 구문은 반드시 URL 인코딩해서 전달해야 합니다. curl의 --data-urlencode를 사용하면 구문을 그대로 적어도 자동으로 인코딩됩니다.
curl --get 'https://api.modusign.co.kr/documents' \
-H 'Accept: application/json' \
-H 'Authorization: Basic {인코딩된 API-KEY}' \
--data-urlencode 'offset=0' \
--data-urlencode 'limit=10' \
--data-urlencode "filter=status eq 'COMPLETED'"직접 인코딩하는 경우 아래처럼 변환합니다.
| 문자 | 인코딩 |
|---|---|
| 공백 | %20 |
, (콤마) | %2C |
: (콜론) | %3A |
+ (플러스) | %2B |
예를 들어 &filter=status%20eq%20'COMPLETED'를 적용하면 완료된 문서 목록을 불러옵니다.
2. 문서 리스트 조회 필터
문서 리스트 조회(GET /documents)에서 사용할 수 있는 필터입니다.
| 필터 | 구문 예시 | 인코딩 결과 |
|---|---|---|
| 문서 상태 | status eq 'COMPLETED' | status%20eq%20'COMPLETED' |
| 문서 제목 | contains(title, '2021') | contains(title%2C%20'2021') |
| 생성일 | createdAt ge '2022-01-01T00:00:00+09:00' | createdAt%20ge%20'2022-01-01T00%3A00%3A00%2B09%3A00' |
| 요청일 | startedAt ge '2022-01-01T00:00:00+09:00' | startedAt%20ge%20'2022-01-01T00%3A00%3A00%2B09%3A00' |
| 최근 활동일 | updatedAt ge '2022-01-01T00:00:00+09:00' | updatedAt%20ge%20'2022-01-01T00%3A00%3A00%2B09%3A00' |
| 라벨 | labelIds in ('labelId1', 'labelId2') | labelIds%20in%20('labelId1'%2C%20'labelId2') |
문서 상태
특정 상태의 문서를 조회합니다. eq로 값을 지정하며, 필터에 사용할 수 있는 상태 값은 아래 6가지입니다.
| 값 | 의미 |
|---|---|
ON_PROCESSING | 관련 리소스 생성 중 |
PROCESSING_FAILED | 관련 리소스 생성 실패 |
ON_GOING | 서명/열람 진행중 |
ABORTED | 서명/열람이 중단됨 |
COMPLETED | 모든 서명/열람 완료 |
DRAFT | 작성 중 |
안내사항문서 리스트 조회의 응답에는
SCHEDULED(전송 예약 중),MODIFYING(수정 중),APPROVAL_PENDING(결재 대기 중) 상태도 올 수 있지만, 필터에 사용할 수 있는 상태 값으로 안내된 것은 위 6가지입니다.
문서 제목
contains를 사용해 제목에 해당 값이 포함된 문서를 조회합니다.
생성일 · 요청일 · 최근 활동일
특정 시간 구간에 생성(createdAt)·요청(startedAt)되었거나, 마지막 활동일이 변경(updatedAt)된 문서를 조회합니다.
| 연산자 | 의미 |
|---|---|
ge | 이상 (greater or equal than) |
le | 이하 (less or equal than) |
ge와 le를 and로 함께 사용하면 기간(between)처럼 조회할 수 있습니다.
createdAt ge '2026-09-01T00:00:00+09:00' and createdAt le '2026-09-30T23:59:59+09:00'
안내사항
- 시각 정보는 ISO 8601 형식을 사용합니다.
- 타임존을 명시하지 않으면 UTC를 기준으로 처리됩니다. 한국 표준시(KST)는 UTC보다 9시간 빠르므로, 한국 시간 기준으로 조회하려면
+09:00을 붙여 입력하세요.
라벨
특정 라벨이 적용된 문서를 조회합니다. in은 전달된 라벨 ID들을 OR 조건으로 검색하며, 라벨 검색은 동시에 최대 20개까지 허용됩니다. 라벨 ID는 라벨 목록 조회 API로 확인할 수 있습니다.
여러 조건 조합
각 조건절 사이에 and를 넣어 함께 사용할 수 있습니다.
status eq 'COMPLETED' and contains(title, '2021')인코딩 결과는 아래와 같습니다. 줄바꿈 없이 한 줄로 전달하세요.
status%20eq%20'COMPLETED'%20and%20contains(title%2C%20'2021')3. 템플릿 리스트 조회 필터
템플릿 리스트 조회(GET /templates)는 제목 필터만 지원합니다.
| 필터 | 구문 예시 | 인코딩 결과 |
|---|---|---|
| 템플릿 제목 | contains(title, '2021') | contains(title%2C%20'2021') |
예를 들어 &filter=contains(title%2C%20'2021')를 적용하면 "2021"이 제목에 포함된 템플릿을 불러옵니다.
curl --get 'https://api.modusign.co.kr/templates' \
-H 'Accept: application/json' \
-H 'Authorization: Basic {인코딩된 API-KEY}' \
--data-urlencode 'offset=0' \
--data-urlencode 'limit=10' \
--data-urlencode "filter=contains(title, '용역')"
안내사항템플릿을 제목 외의 기준으로 분류해 조회하려면 메타데이터를 사용하세요. 템플릿 리스트 조회도
metadatas파라미터를 지원합니다. 자세한 내용은 메타데이터로 문서와 템플릿 분류하기를 참고하세요.
4. 자주 쓰는 필터 예시
지난달 생성된 문서 중 완료된 문서 조회하기
curl --get 'https://api.modusign.co.kr/documents' \
-H 'Accept: application/json' \
-H 'Authorization: Basic {인코딩된 API-KEY}' \
--data-urlencode 'offset=0' \
--data-urlencode 'limit=100' \
--data-urlencode "filter=status eq 'COMPLETED' and createdAt ge '2026-09-01T00:00:00+09:00' and createdAt le '2026-09-30T23:59:59+09:00'"제목에 '근로계약'이 포함된 진행 중 문서 조회하기
curl --get 'https://api.modusign.co.kr/documents' \
-H 'Accept: application/json' \
-H 'Authorization: Basic {인코딩된 API-KEY}' \
--data-urlencode 'offset=0' \
--data-urlencode 'limit=10' \
--data-urlencode "filter=status eq 'ON_GOING' and contains(title, '근로계약')"특정 라벨이 붙은 문서 조회하기
curl --get 'https://api.modusign.co.kr/documents' \
-H 'Accept: application/json' \
-H 'Authorization: Basic {인코딩된 API-KEY}' \
--data-urlencode 'offset=0' \
--data-urlencode 'limit=10' \
--data-urlencode "filter=labelIds in ('{라벨 ID 1}', '{라벨 ID 2}')"5. 자주 묻는 질문
여러 조건을 OR로 묶어 조회할 수 있나요?
조건절 사이에는 and를 사용하며, 조건절 간 OR 조합은 안내되어 있지 않습니다. 라벨은 labelIds in (...)으로 나열한 라벨 ID들을 OR 조건으로 검색할 수 있고, 최대 20개까지 지정할 수 있습니다.
날짜 필터 결과가 예상과 9시간 차이가 납니다.
날짜에 타임존을 명시하지 않으면 UTC를 기준으로 처리됩니다. 한국 시간 기준으로 조회하려면 2026-09-01T00:00:00+09:00처럼 +09:00을 붙여 입력하세요.
응답에 나오는 상태 값으로 필터를 걸 수 없나요?
응답에는 SCHEDULED, MODIFYING, APPROVAL_PENDING을 포함해 9가지 상태가 올 수 있지만, 필터에 사용할 수 있는 상태 값으로 안내된 것은 ON_PROCESSING, PROCESSING_FAILED, ON_GOING, ABORTED, COMPLETED, DRAFT 6가지입니다.
템플릿도 상태나 날짜로 필터할 수 있나요?
아니요. 템플릿 리스트 조회는 제목 필터(contains(title, '...'))만 지원합니다. 다른 기준으로 분류하려면 메타데이터를 사용하세요.
더 자세한 API 내용은 API References에서 확인하세요!문서 리스트 조회, 템플릿 리스트 조회, 라벨 목록 조회 의 자세한 내용을 확인하세요.
Updated 3 days ago
