Skip to main content
POST
Commit a reviewed attendance import

Authorizations

Authorization
string
header
required

Passport bearer token authentication for legacy admin sessions.

Path Parameters

program_id
integer
required

Program id in the current organization.

participation_import_id
integer
required

Participation import id in the current organization.

Body

application/json

Validated request fields for this operation.

idempotency_key
string
required

Stable commit request key; do not replace the batch after partial failure.

Maximum string length: 255
Example:

"attendance-commit-42"

Response

This idempotent commit already completed; includes created check summaries.

id
integer
Example:

42

program_id
integer
Example:

12

participation_period_id
integer | null
Example:

18

original_filename
string
Example:

"attendance.xlsx"

source_type
enum<string>
Available options:
csv,
xlsx
Example:

"xlsx"

status
enum<string>
Available options:
pending,
validating,
review,
processing,
completed,
failed,
voided
Example:

"review"

progress
integer
Example:

100

mapping
inspection
object[]
summary

Counts after validation; empty array before counts exist. Limit failures add estimated_rows/maximum_rows.

validation_errors
object[]
Maximum array length: 100
error_message
string | null
Example:

"The attendance file could not be validated. Review the mapping and retry."

failure_stage
enum<string> | null
Available options:
validation,
commit,
null
Example:

"validation"

can_commit
boolean

True only in review with zero blocked and review rows.

Example:

true

can_void
boolean

True only while completed.

Example:

false

created_at
string<date-time> | null
Example:

"2026-10-20T12:00:00Z"

completed_at
string<date-time> | null
Example:

"2026-10-20T12:05:00Z"

voided_at
string<date-time> | null
void_reason
string | null
Example:

"Imported the incorrect workbook."

created_checks
object[]
rows
object
recipient_fields
object[]