Submit drafted roster rows for revalidation
POST/roster-records/:rosterId/revalidate
Moves the roster into revalidation and re-runs validation over its rows in the background.
When to use: call this after saving draft corrections with PATCH /roster-records/{rosterId}/draft, once the edits are ready to be checked again.
Preconditions: supply the tenant-id header and the rosterId of an existing roster job. The roster must not already be undergoing processing - a roster in REVALIDATE, VALIDATION_IN_PROGRESS, IN_PROGRESS, or PRE_PROCESSING state is rejected with 409, and the response names the state that blocked the request. Wait for that work to finish, then retry.
What you get back: 202 as soon as the request is accepted, with the roster's new status set to REVALIDATE. The counts in the body are placeholders at this point: validation runs asynchronously, so poll the roster or its rows to observe progress and final results rather than reading totals from this response.
Side effects: the roster status is updated and a validation run is queued. Revalidation can be turned off for the platform, in which case this endpoint returns 503 until it is re-enabled.
Request
Responses
- 202
- 400
- 401
- 403
- 404
- 409
- 503
The revalidation request was accepted and the roster moved to REVALIDATE. Validation runs in the background; the numeric counts are placeholders until it completes.
Returned when the request is malformed - for example a missing tenant-id header or a blank rosterId.
Returned when the request carries no valid authentication.
Returned when the caller lacks the UPDATE_ROSTER permission for this tenant.
Returned when no roster job with the supplied rosterId exists for the tenant.
Returned when the roster is already being processed. Wait for the reported state to clear, then retry.
Returned when revalidation is currently turned off for the platform. This is a temporary operational state - contact support if it persists.