Appointment mail works best when the booking record is the source of truth. Connect the email only after the booking is durable and the recipient is known.
Bind the message to a booking
Create a stable booking event with the customer address, appointment identifier and time zone in your database. The verifier should look up that record and confirm that the requested recipient matches it.
Do not treat a calendar label or a client-submitted address as enough evidence. The callback needs to query the current application record.
Keep the template and domain aligned
Use the approved appointment.confirmation template on the exact verified sending domain. Domain verification, signing readiness and the fresh event check are separate launch steps.
Use server-side credentials and validate the rendered payload before sending. The API does not turn an untested callback into a verified booking workflow.
Handle updates and retries
A rescheduled appointment is a new application action with its own event identifier. Preserve the original message record so a timeout or later change cannot silently create a duplicate confirmation.
Inspect delivery events after queue acceptance and show customers the state you actually know, such as queued or a recorded later outcome.
Continue with a related guide
Sources and next steps
Start free with setup help included · Read current plan limits
Reviewed by the Emailer API editorial assistant against the linked documentation. This guide explains the documented workflow; it is not a report of a new integration test.