๐Ÿ“จ Marketing Preferences

โ—๏ธ

This API is being retired on September 30th, 2026, and is replaced by the new Cloud API. Please see here for details on how to get started on the Cloud API.

On the Donations & Fundraising Platform a Marketing Permission statement can be set for donors and fundraisers to provide their marketing preferences. This can include opting in or out of being contacted by email, post, text or phone.

The following table contains the fields that are returned within the response call of the marketing preferences endpoint.

KeyLabelTypeDescription
allowedToContactAllowed To ContactBooleanResponse from user whether they can be contacted.
answeredAtAnswered AtDateDate that marketing preferences were completed
charityAccountGuidCharity Account GuidUUIDCharity Account GUID
charityIdCharity IdLongCharity Id
emailOptInEmail Opt InBooleanHas user opted in for contact via email
permissionStatementPermission StatementStringStatement sent to user asking for permission to contact
phoneOptInPhone Opt InBooleanHas user opted in for contact via phone
postOptInPost Opt InBooleanHas user opted in for contact via post
smsOptInSMS Opt InBooleanHas user opted in for contact via SMS
supporterIdSupporter IdLongSupporter Id

๐Ÿš€ Search Marketing Preferences

/marketingPreferences

Get a list of marketing preferences filterable by the attributes below:

KeyLabelTypeDescription
campaign_guidsCampaign GuidsArray[string]Campaign GUID associated with the marketing preferences object
event_idsEvent IdsArray[Long]Event Ids associated with the marketing preferences object
date_fromDate FromStringDate from which to filter based on the answer date of the supporter
date_toDate ToStringDate to filter to based on the answer date of the supporter
limitLimitIntegerNumber of records to be returned in the response
pagePageIntegerThe number of pages to skip before starting to collect the result set
๐Ÿšง

Reminder

You can only use either Campaign Guids or Event Ids but not both at the same time

Sample Request

GET - http://dataapi.enthuse.com/marketingPreferences?access_token=rR5_kQN_TVZMwqz4tyc8vzJ0ltc
&campaign_guids=00000000-0000-0000-0000-000000000000
&date_from=2020-02-25%2000%3A00%3A00 
&date_to=2020-03-01%2000%3A00%3A00
&limit=25
&page=1

Sample Responses:

200 - OK call was successful and returned data

{
  "allowedToContact": true,
  "answeredAt": "2020-01-01 00:00:00",
  "charityAccountGuid": "d290f1ee-6c54-4b01-90e6-d701748f0851",
  "charityId": 7236487,
  "emailOptIn": true,
  "permissionStatement": "string",
  "phoneOptIn": true,
  "postOptIn": true,
  "smsOptIn": true,
  "supporterId": 7236487
}

401 - Access token has expired or is incorrect

{
  "message": "Unauthorized.",
  "status": 401
}

403 - The account linked to the token does not match the account of the records attempting to retrieve

{
  "message": "Forbidden.",
  "status": 403
}

404 - Call authenticated but no records match the searched criteria

{
  "message": "No records found.",
  "status": 404
}

416 - Call authenticated but both eventId and campaignGuid used together

{
  "message": "eventId and campaignGuid cannot be used in unison",
  "status": 416
}

500 - Error occurred within Service, data could not be returned

{
  "message": "Internal Server Error.",
  "status": 500
}

๐Ÿš€ Get Marketing Preferences from a Supporter ID

/marketingPreferences/{supporter_id}

Get a marketing preferences object from a known Supporter ID filterable by the attribute below

KeyLabelTypeDescription
supporterIdSupporter IdLongSupporter Id

Sample Request

GET - http://dataapi.enthuse.com/marketingPreferences/123?access_token=rR5_kQN_TVZMwqz4tyc8vzJ0ltc

Sample Responses:

200 - OK call was successful and returned data

{
  "allowedToContact": true,
  "answeredAt": "2020-01-01 00:00:00",
  "charityAccountGuid": "d290f1ee-6c54-4b01-90e6-d701748f0851",
  "charityId": 7236487,
  "emailOptIn": true,
  "permissionStatement": "string",
  "phoneOptIn": true,
  "postOptIn": true,
  "smsOptIn": true,
  "supporterId": 7236487
}

401 - Access token has expired or is incorrect

{
  "message": "Unauthorized.",
  "status": 401
}

403 - The account linked to the token does not match the account of the records attempting to retrieve

{
  "message": "Forbidden.",
  "status": 403
}

404 - Call authenticated but no records match the searched criteria

{
  "message": "No records found.",
  "status": 404
}

500 - Error occurred within Service, data could not be returned

{
  "message": "Internal Server Error.",
  "status": 500
}