Skip to main content
POST
/
comms
/
v1
/
api
/
comms
/
send
Send a templated email to an existing attendee.
curl --request POST \
  --url https://api.qflowhub.io/comms/v1/api/comms/send \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'Ocp-Apim-Subscription-Key: <api-key>' \
  --data '
{
  "attendeeId": "<string>",
  "templateId": "<string>",
  "correlationId": "<string>"
}
'
{
  "attendeeInvitationId": "<string>",
  "status": "<string>"
}

Documentation Index

Fetch the complete documentation index at: https://docs.qflowhub.io/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

OAuth 2.0 access token issued by https://identity.qflowhub.io/core. Include as Authorization: Bearer <token>. See the Authentication guide for the token flow.

Ocp-Apim-Subscription-Key
string
header
required

Your APIM subscription key. Sent in the welcome email when your account is enabled. Required on every request alongside the bearer token.

Body

Send a templated email to an existing attendee. Covers first-sends to bulk-imported guests, "I lost my ticket" resends, and retries after transient API-side failures. Permanent recipient failures (bounce / spam / unsubscribe / SendGrid drop) are rejected 422 with a structured reason — sending again won't help.

attendeeId
string
required

Existing attendee's id (string GUID).

templateId
string
required

The comms template to send. Must belong to the same event as the attendee.

correlationId
string

Optional. Echoed in the integrator webhook payload — use a fresh value per logical send.

Response

OK

Response for a successful queue. The send happens asynchronously; outcome arrives via webhooks (comms.sent / comms.failed / comms.delivered / etc.).

attendeeInvitationId
string
status
string