SSO Data Sharer Webhook
Push out real-time information about SSO users via a secured data sharer service. This service can notify an external third party system about users, sharing information such as user details and contact preferences etc. Third parties can then use this to ingest data about SSO users and keep user details up to date. This service will share updates whenever a user performs an action, i.e. updates their first name or opts in or out of a contact method.

Integration Party configures the service to point to an endpoint provided by the Cortex along with a secured key which can be used to identify and validate the request.
The JSON body detailed below will be sent to this endpoint whenever the user updates their SSO account.
Example
An example webhook request for a configured service. All webhooks requests will contain the full user profile, regardless of what was changed.
Method | URL | Example |
---|---|---|
| https://example.com/webhook ?\ key=PzRt3Fs5cvs8P2pAqegwJk5VZtYJ0IDk |
Field | Type | Definition |
---|---|---|
id | Number | The user’s unique SSO ID |
version | Number | The schema version |
recordRevoked | Boolean | True if the user has requested their account be deleted under GDPR. You must either delete the user record from your system or remove all PII data associated with this user’s SSO ID. |
clientId | String | The ID associated with this client i.e. CORTEX |
registerMetadata.registerSource | String | The source location the user first registered |
registerMetadata.registerType | String | The type of registration |
registerMetadata.registerPlatform | String | The platform the user registered on |
userProfile.id | Number | The user’s unique SSO ID |
userProfile.email | String | The user’s email address |
userProfile.guardianEmail | String | The email address of their guardian if the user is a minor |
userProfile.minorId | String | If the user is a minor this is their username/nickname |
userProfile.firstName | String | The user’s first name |
userProfile.otherNames | String | The user’s middle name |
userProfile.lastName | String | The user’s last name |
userProfile.birthDate | ISO 8601 Datetime | The user’s date of birth |
userProfile.gender | String | The user’s genderBased on the RFC 6350: M = MaleF = Female O = Other N = None or not applicable U = Unknown |
userProfile.address1 | String | The user’s address line 1 |
userProfile.address2 | String | The user’s address line 2 |
userProfile.town | String | The user’s town |
userProfile.region | String | The user’s region / county |
userProfile.country | String | The user’s country |
userProfile.postcode | String | The user’s postcode |
userProfile.contactNumber | String | The user’s phone number |
userProfile.companyName | String | The user’s company name |
userProfile.companyPhoneNumber | String | The user’s company phone number |
userProfile.companyAddressOne | String | The user’s company address line 1 |
userProfile.companyAddressTwo | String | The user’s company address line 2 |
userProfile.companyTown | String | The user’s company town |
userProfile.companyCountry | String | The user’s company country |
userProfile.companyPostcode | String | The user’s company postcode |
userProfile.lastUpdated | ISO 8601 Datetime | The last time the user updated their profile information |
userProfile.createdAt | ISO 8601 Datetime | The date and time the user created their SSO account |
userProfile.metadata | JSON | Unstructured JSON object that contains additional information about the user, for example: "metadata": "object": , "key": "value", "number": 1, "array": [1, "value"], "boolean": false |
userProfile.suspension | Object | If the user’s account has been suspended this field will contain information about it.If the user is not suspended then this field will be null. |
userProfile.type | String | The type of account suspension, current values: suspension |
userProfile.expiresAt | ISO 8601 Datetime | The date and time this suspension will elapse. |
userProfile.reason | String | A freetext field providing additional context for suspension reason. |
clientPreferences | Array | This contains the list of account preferences available to the user |
clientPreferences.clientId | String | The ID associated with this client i.e. CORTEX |
clientPreferences.name | String | The display name of the preference |
clientPreferences.description | String | The description of the preference |
clientPreferences.key | String | The unique key for this preferenceNote: |
clientPreferences.set | Boolean | If true this indicates that the user has responded to this preference. This is useful for some preferences where the user is not obliged to select an option i.e. a checkbox preference. In this case we know the user has acknowledged the preference but not chosen any options. |
clientPreferences.options | Array | A list of options available to the user for this preference |
clientPreferences.options.id | Number | The globally unique ID of this option |
clientPreferences.options.value | String | The display text for this option |
clientPreferences.options.metadata | Object | Key / value pairs of additional metadata associated with this option |
clientPreferences.options.selected | Boolean | True if the user has selected this option - false otherwise |
entitlements | Array | A list of entitlements this user has |
entitlements.id | String | The ID of this entitlement |
entitlements.name | String | The name of this entitlement |
entitlements.validFrom | ISO 8601 Datetime | The date and time this entitlement is valid from |
entitlements.validTo | ISO 8601 Datetime | The date and time this entitlement is valid to |
accountLinks | Array | A list of account IDs linked to this SSO account |
accountLinks.sourceSystemId | String | The system this account link relates to e.g. cortex_VM for Ticketmaster |
accountLinks.sourceSystemUserId | String | The ID of the user’s account within that system |
accountLinks.sourceSystemCreatedAt | ISO 8601 Datetime | The date and time this account link was created at the source, i.e. at Ticketmaster. |
accountLinks.createdAt | ISO 8601 Datetime | The date and time this account link was created |
accountLinks.lastModified | ISO 8601 Datetime | The date and time this account link was last updated |
Updated 17 days ago