Filter Bulk Payment Schedule
POST/v1/open-api/monthly-payment/filter
Filter payment schedule rows across one or more contracts — the bulk-sync
counterpart of GET /v1/open-api/contract/{id}/monthly-payment. Send
contractIds: [1024] for a single contract's schedule, or several IDs to fetch
many contracts' schedules in one call (each row carries its own contractId, so
the client groups them itself instead of issuing one request per contract).
Always returns rows from the active schedule only (a contract has at most one active schedule at a time) — there is no schedule-status filter.
Requires grant PERMISSION_OPEN_API_CONTRACT:READ.
Request
Responses
- 200
- 400
- 401
- 403
- 429
Page of matching payment schedule rows.
Validation error (400). Field-level failures are listed in errors[] and error is
null; a malformed / unparsable JSON body is the inverse — error.messageCode is
3705 and errors[] is empty.
Invalid, revoked or expired token (401) — also returned when the connection was
revoked or the company is blocked.
Produced by the authentication filter, so the body is a reduced envelope: no
error, no requestId, and errors is null rather than []. Every cause yields the
same fixed English message.
The token lacks the required permission:scope grant (403).
Rate limit of 60 requests/minute exceeded (429). Like 401, this comes from the
authentication filter: reduced envelope, fixed English message, no error object and no
Retry-After header.