Record Attendance
Write the outcome — attended, no-show or canceled — onto this contact's event registration, with an optional minutes-attended figure for engagement grading.
Getting here
Automate → Workflows, open a workflow, click + on the canvas, then pick Record Attendance under Add Steps.
Before you start
- An owner, admin or agent can add this step and save the workflow. Publishing that workflow — the thing that makes it run on live conversations — is an owner or admin action.
- Building and running workflows depends on your plan; see pricing.
- The contact must already be registered for the event — Register for Event first. This step only updates an existing registration; it never creates one.
Set up
- Open the workflow and click + where the record belongs.
- Pick Record Attendance.
- Choose Attended, No show or Canceled.
- A fresh step pre-fills the minutes field with
{{payload.minutes}}— clear it if this run has no such field, or it will fail every time; see Limits. - Leave the event dropdown on the most recent event they registered for, or name one.
- Save the step, then publish the workflow. A saved but unpublished workflow records nothing.
Fields
- Attended / No show / Canceled (dropdown)
- The outcome to record. This dropdown carries no on-screen label in the drawer.
- Default: Attended
- Minutes attended (placeholder text, no label)
- How long they stayed.
- Default:
{{payload.minutes}}on a freshly added step — not blank; see Set up. - Limits: If set (including the default), it must resolve to a real number or the whole step fails — see When it fails.
- The most recent event they registered for (dropdown)
- Which registration to update. This dropdown carries no on-screen label either, and lists only events that have not started yet — see Limits for what that means for naming a past one.
- Default: The most recent event they registered for
How it works
- The step resolves the contact behind this conversation and updates their existing registration for the named event — or, left unnamed, for whichever event they registered for that has most recently started. It never registers anyone; that is Register for Event's job.
- Without a named event, the pick is deliberately "the session that has already happened, most recently" — not the nearest event in either direction — so a report about last night's session cannot land on next week's registration. A NAMED event skips that check entirely: it is not required to have started, so the guard against grading a session that has not happened yet only applies when the event is left unnamed.
- If Minutes attended is set, it must resolve to a real, non-negative number or the step fails without saving anything — a status saved with no duration would silently send every attendee down whichever lane has no minutes condition, so it refuses rather than guesses.
- The status and the minutes are independent: a run can save the status with minutes left blank, and a later run with the same status can add minutes to that same registration — each field only writes when it actually changed.
- Recording the same status and the same minutes a second time — a replayed webhook, or two reports saying the same thing — is a no-op success: nothing changes and nothing fires again.
- A real status change fires this workspace's Event Registration Changed trigger for other workflows. It is not conditioned on the registration's own conversation: any workflow run naming a status change fires it, since a run always has a conversation.
- A minutes-only correction, with the status unchanged, does not fire that trigger — it is not treated as a state transition, so a flow chained off the status change does not re-run for a correction.
When it fails
- This conversation has no linked contact: the step fails with this conversation has no contact whose attendance to record.
- Minutes attended was set but does not resolve to a number (a missing placeholder, negative text): the step fails with minutes attended did not resolve to a number (got “<text>”), and nothing is saved. This is also what happens if the default
{{payload.minutes}}is left in place on a run whose trigger never suppliespayload.minutes. - The contact has no registration to update — for the named event, or for any event at all: the step fails with this contact is not registered for that event or this contact is not registered for any event.
- Left unnamed, none of the contact's registrations are for an event that has started yet: the step fails with no event this contact registered for has started yet.
- A database error reading or saving the registration fails the step with a specific reason (could not read this contact's registrations or could not save the attendance).
- A failed record does not stop the run: the step is recorded failed and the flow moves straight to the next one.
Limits
- It cannot register a contact — only update a registration Register for Event already created.
- Left unnamed, it only ever considers events that have already started, and picks the most recently started one — a contact with two past sessions on file gets only the newer one graded by this step.
- The event dropdown lists only events that have not started yet — the same list Register for Event offers. A past event cannot be picked; to grade one, leave the dropdown on The most recent event they registered for.
- A fresh step defaults Minutes attended to
{{payload.minutes}}, which fails the step on any run whose trigger does not populate that field — clear the field if the status alone is what this run should record. - It does not repeat a status transition's trigger for a minutes-only correction — a flow reacting to attendance will not see a second run just because the minutes were adjusted afterwards.
Use cases
- A webinar platform posts each attendee's report to an Incoming Webhook workflow; this step records Attended, and the default
{{payload.minutes}}reads the minutes from that report. - Mark Canceled when a contact replies that they can no longer make it — clear Minutes attended first, since the default
{{payload.minutes}}has nothing to resolve from a chat reply and would fail the step otherwise.
Related
- Register for Event — Add this contact to an event's list, which is what makes them eligible for its reminders — a named event, or the next published one coming up.
- Workflows: how a flow runs — A workflow is one trigger, optional conditions and an ordered list of steps; only a published workflow runs, and this article explains how a run starts, forks, pauses, fails and stops.
Reading this with an AI assistant? Plain Markdown version.