Consent Groups API and Wallet pass install URLs

New endpoints and fields have been added to the API for managing consent groups and generating wallet pass installation URLs.

Consent groups represent categories of contact opt-in/opt-out preferences. The following endpoints are available when the Consent Groups feature is enabled for your account (they return 403 with code CONSENT_GROUP_NOT_ENABLED otherwise):

Two existing operations were extended:

  • Import contacts (POST /contacts/import) accepts a new optional consentGroupIds field to add all imported contacts to the specified consent groups.
  • Get a contact’s details (GET /contacts/{identifier}) now returns a consentGroups array showing each consent group the contact belongs to and their subscription status. This is present only when the Consent Groups feature is enabled.

Wallet

  • Get a pass installation URL for a contactGET /wallet/passes/{passId}/installUrl/{contactId}. Generates a per-contact wallet installation URL. The returned URL points to the pass installation page and encodes the pass, contact, and organization identifiers as an encrypted token, so it can be shared (email, SMS, QR code) for the contact to add the pass to their Apple Wallet or Google Wallet.