Get a SurveyOL token, use OpenClaw to create a survey, and distribute invitations by email. See the workflow

Email Invitation

Create an Email collector before using these invitation endpoints. All requests require a bearer token and JSON content type.

Add Email Invitation

  • Method: POST
  • URL: https://api.surveyol.com/v1/collector/{collectorId}/invitation/email

Parameters:

  • recipients (array): objects with required email and optional firstName and lastName
  • subject (string)
  • message (string, optional)
  • invitationDate (datetime, optional)
curl --request POST \
--url https://api.surveyol.com/v1/collector/47323f35-197e-4707-a310-6684ab2932bc/invitation/email \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
  "recipients": [
    {"firstName": "Alex", "lastName": "Miller", "email": "alex@example.com"},
    {"firstName": "Jamie", "lastName": "Ng", "email": "jamie@example.com"}
  ],
  "subject": "We value your feedback",
  "invitationDate": "2026-07-04 10:00:00"
}'

message defaults to the standard SurveyOL invitation message when omitted.

Response Example

{
  "id": "d7520dbf-7b31-4b60-9b50-b7f759d410f9",
  "subject": "We value your feedback",
  "message": "Please click the link to take our survey.",
  "createdDate": "2026-07-03T20:14:38Z",
  "emailRecipients": [
    {"id": "43e9eb49-c6a4-458f-9355-e0eb366377f0", "email": "alex@example.com", "responseId": null},
    {"id": "6df9d471-c9f2-4349-9fce-8085debf8f45", "email": "jamie@example.com", "responseId": null}
  ],
  "textRecipients": []
}

List Email Invitations

  • Method: GET
  • URL: https://api.surveyol.com/v1/collector/{collectorId}/invitation/emails
curl --request GET \
--url https://api.surveyol.com/v1/collector/47323f35-197e-4707-a310-6684ab2932bc/invitation/emails \
--header 'Authorization: Bearer <token>'

The response is an array of recipients with id, email, and responseId.

Response Example

[
  {"id": "43e9eb49-c6a4-458f-9355-e0eb366377f0", "email": "alex@example.com", "responseId": null},
  {"id": "6df9d471-c9f2-4349-9fce-8085debf8f45", "email": "jamie@example.com", "responseId": null}
]