The caller's activity sign-ups in an edition
The single personal read of the activity registration feature (the public schedule stays stateless — the front joins this against it by `occurrence_id`). Returns the caller's live (non-cancelled) participations joined with their program and occurrence; cancelled rows are ledger history and never shown. `data` is `null` when the caller holds no ticket.
/editions/{edition_id}/my-participationsThe single personal read of the activity registration feature (the
public schedule stays stateless — the front joins this against it
by occurrence_id). Returns the caller's live (non-cancelled)
participations joined with their program and occurrence; cancelled
rows are ledger history and never shown. data is null when the
caller holds no ticket.
Authorization
bearerAuth JWT issued by IdentityX, signed with Ed25519
In: header
Path Parameters
Edition ID.
Response Body
application/json
application/problem+json
application/problem+json
application/problem+json
curl -X GET "https://example.com/editions/497f6eca-6276-4993-bfeb-53cbbbba6f08/my-participations"{
"items": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"edition_id": "aeda7fca-56fe-426a-8c37-1876faaaf005",
"occurrence_id": "8508ee33-23a1-4a06-ae02-1eb167405e7b",
"registration_id": "7b2966db-5b97-451d-80d4-713d3a44078b",
"status": "registered",
"created_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z",
"program": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"edition_id": "aeda7fca-56fe-426a-8c37-1876faaaf005",
"kind": "activity",
"name": "string",
"description": "string",
"min_access_level": 0,
"staff_only": true,
"price": 0,
"banner_url": "http://example.com",
"created_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z",
"deleted_at": "2019-08-24T14:15:22Z"
},
"occurrence": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"program_id": "70c1146b-e933-4cb2-a789-bbca5312b517",
"edition_id": "aeda7fca-56fe-426a-8c37-1876faaaf005",
"starts_at": "2019-08-24T14:15:22Z",
"ends_at": "2019-08-24T14:15:22Z",
"max_capacity": 0,
"created_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z",
"deleted_at": "2019-08-24T14:15:22Z"
}
}
]
}{
"detail": "string",
"instance": "../dictionary",
"errors": [
{
"field": "string",
"message": "string"
}
],
"type": "http://example.com",
"status": 401,
"title": "Unauthenticated"
}{
"detail": "string",
"instance": "../dictionary",
"errors": [
{
"field": "string",
"message": "string"
}
],
"type": "http://example.com",
"status": 404,
"title": "Not Found"
}{
"detail": "string",
"instance": "../dictionary",
"errors": [
{
"field": "string",
"message": "string"
}
],
"type": "http://example.com",
"status": 500,
"title": "Internal Server Error"
}Mark a participant as attended POST
Staff-only attendance marking: flips the participation to `attended`. Re-marking an already-attended participation is idempotent, and a `no_show` → `attended` correction is allowed; a cancelled participation (refunded purchase, or the attendee dropped out) is 409 — a cancelled spot cannot be marked attended. Once attended, the attendee's own de-registration is locked (409).
Enqueue certification emission for a program POST
Enqueues the `cert.grant_occurrence` job for the program's participants. The job is idempotent: it only emits certificates for participants who do not already hold one for the program (accountless gifted participants are skipped), and records failures for later inspection via `/editions/{edition_id}/certifications/emission-errors`. The actor must be an owner or admin of the event.