Referral ancestors (inviter chain)
GET
/events/:eventId/entries/:entryId/referral-ancestorsWalk the inviter chain upward from the given entry, returned nearest-first. Returns 403 unless the caller is a confirmed participant (CONFIRMED / CHECKED_IN) of the event.
| Auth | Login required |
|---|
Path parameters
eventIdstringrequiredEvent ID
entryIdstringrequiredTarget entry ID
Query parameters
generationsnumberMax number of ancestor generations. Default 10 (clamped 1–50)
Response
| Field | Type | Description |
|---|---|---|
entryId | string | Target entry ID |
entry | object | Target entry node (lightweight DTO) |
ancestors | object[] | Ancestors nearest-first (invalid-state parents are disabled: true / user: null) |
truncated | boolean | true if truncated by invalid state, missing parent, or generation limit |
Request
curl https://api.4s.link/events/EVENT_ID/entries/:entryId/referral-ancestors \-H "Authorization: Bearer 4s_at_..."
Example response
{"entryId": "770fa622-...","entry": {"id": "770fa622-...","invitedByEntryId": "660e9511-...","invitationGeneration": 2,"invitationRootEntryId": "550e8400-...","user": { "id": "2b3c4d5e-...", "slug": "carol-lee", "firstName": "Carol", "lastName": "Lee" },"ticketName": "招待参加"},"ancestors": [{"id": "660e9511-...","invitedByEntryId": "550e8400-...","invitationGeneration": 1,"invitationRootEntryId": "550e8400-...","user": { "id": "1a2b3c4d-...", "slug": "bob-sato", "firstName": "Bob", "lastName": "Sato" },"ticketName": "招待参加"}],"truncated": false}