Skip to main content

Send a guest reminder

POST /rest/v1/events/{eventId}/guests/{eventGuestId}/reminders

Sends one reminder email for a single guest registration. The message uses the same templates as scheduled and manual reminders, and includes a working cancel registration link for that guest.

Requires the reminders:send scope. See Authentication for headers, rate limits, and the shared error format.

This sends a live email. Use it to verify the reminder and cancel-ticket flow end to end. It does not notify other guests and does not start the 7-day manual blast cooldown.

Path parameters​

ParameterTypeRequiredDescription
eventIdUUID stringYesEvent that owns the registration.
eventGuestIdUUID stringYesId of the event–guest registration row (eventGuestId from List event guests).

The organization comes from the API key. The event and guest must belong to that organization. Cancelled registrations are treated as not found.

Request body​

Send JSON. An empty body is allowed and defaults to a manual reminder to the guest’s email.

FieldTypeRequiredDefaultDescription
reminderTypestringNomanualone_week, one_day, event_day, manual, or open_spot.
tostringNoguest emailOptional override address for QA. The cancel link still targets this eventGuestId.

Content-Type: application/json is recommended when you send a body.

Example​

curl -X POST "https://wehabit.mx/rest/v1/events/{eventId}/guests/{eventGuestId}/reminders" \
-H "Authorization: Bearer <API_KEY>" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"reminderType":"one_day","to":"qa@example.com"}'

Response 200​

{
"data": {
"eventGuestId": "8c7e9f2a-1234-4567-89ab-123456789abc",
"eventId": "7f4c1b2e-8e9b-4e31-9c1d-123456789abc",
"reminderType": "one_day",
"to": "qa@example.com",
"cancelUrlIncluded": true
}
}
FieldTypeDescription
eventGuestIdstringRegistration that was emailed.
eventIdstringParent event id.
reminderTypestringTemplate that was sent.
tostringAddress that received the email.
cancelUrlIncludedbooleantrue when a cancel link was embedded (requires signing secret on the server).

Errors​

Shared codes are documented in Authentication. These are specific to this route:

400 invalid body​

{
"error": {
"code": "INVALID_REQUEST",
"message": "One or more fields are invalid.",
"details": {
"reminderType": "Must be one_week, one_day, event_day, manual, or open_spot.",
"to": "Must be a valid email address."
}
}
}

403 missing scope​

{
"error": {
"code": "FORBIDDEN",
"message": "The API key does not have permission to send reminders."
}
}

404 unknown guest or event​

{
"error": {
"code": "NOT_FOUND",
"message": "The requested guest registration was not found."
}
}

409 draft event​

{
"error": {
"code": "EVENT_DRAFT",
"message": "Publish the event before sending a reminder."
}
}

405 other methods​

Only POST is allowed. The response includes Allow: POST.