Online Now  

/v1/notification/

Manages all notification related functions
GET

/v1/notification/get_detail

#
Returns the full non-chat notification payload for a modal or deep link. Chat notifications are intentionally excluded; those belong to the v2 Messages/chat dock flow.

Parameters

NameTypeRequiredDefaultDescription
notificationID int No 0 Notification row ID.
getParametersJson string No "" Optional validated notification-root context used only while action-button DTOs are generated.
Request example (cURL)
curl --get \
  'https://ca.appointmenttrader.com/v1/notification/get_detail' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'notificationID={{notificationID}}' \
  --data-urlencode 'getParametersJson={{getParametersJson}}'

Returns

JSON
See the shared response schema and synthetic example.
Parameters: getParametersJson
FieldTypeRequiredDescription
getParametersJsonstring (application/json) NoJSON-encoded object; empty string uses an empty object.
getParametersJsonobject (decoded JSON) No
getParametersJson.overridePayoutMethodDialog = "ShowRefundToReviewerDialog" No
Response fields
FieldTypeRequiredDescription
$notification_get_detail_Response Yes
$.oneOf[0] Yes
$.oneOf[0].allOf[0]object Yes
$.oneOf[0].allOf[0].RequestUserAliasstring Yes
$.oneOf[0].allOf[0].RequestPathstring | null Yes
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Yes
$.oneOf[0].allOf[0].ResponseCodeinteger Yes
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Yes
$.oneOf[0].allOf[1].Payload YesOwned notification detail including plain text, recipients summary, tags and actions. The legacy serializer can return false if community access is no longer available.
$.oneOf[0].allOf[1].Payload.anyOf[0]object Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].notificationIDinteger Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].notificationBodyIDinteger Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].createdDate Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].createdDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].createdDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].lastUpdateDate Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].lastUpdateDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].lastUpdateDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].readTime Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].readTime.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].readTime.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].readStatestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].isUnreadboolean Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].titlestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].bodystring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].bodyPreviewstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].destinationURLstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].messageGroupID Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].messageGroupID.anyOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].messageGroupID.anyOf[1]string Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].tagsRawNotificationStructuredTags Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].tagsRaw.anyOf[0]array Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].tagsRaw.anyOf[1]object Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].tagsRaw.anyOf[1].TextTagsarray No
$.oneOf[0].allOf[1].Payload.anyOf[0].tagsRaw.anyOf[1].TextTags[]string No
$.oneOf[0].allOf[1].Payload.anyOf[0].tagsRaw.anyOf[1].DatabaseTagsNotificationDatabaseTags No
$.oneOf[0].allOf[1].Payload.anyOf[0].tagsRaw.anyOf[1].DatabaseTags.anyOf[0]array No
$.oneOf[0].allOf[1].Payload.anyOf[0].tagsRaw.anyOf[1].DatabaseTags.anyOf[1]object No
$.oneOf[0].allOf[1].Payload.anyOf[0].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*NotificationTagValue No
$.oneOf[0].allOf[1].Payload.anyOf[0].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*.anyOf[0]null No
$.oneOf[0].allOf[1].Payload.anyOf[0].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*.anyOf[1]string No
$.oneOf[0].allOf[1].Payload.anyOf[0].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*.anyOf[2]number No
$.oneOf[0].allOf[1].Payload.anyOf[0].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*.anyOf[3]boolean No
$.oneOf[0].allOf[1].Payload.anyOf[0].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*.anyOf[4]array No
$.oneOf[0].allOf[1].Payload.anyOf[0].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*.anyOf[4][]NotificationTagValue No
$.oneOf[0].allOf[1].Payload.anyOf[0].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*.anyOf[5]object No
$.oneOf[0].allOf[1].Payload.anyOf[0].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*.anyOf[5].*NotificationTagValue No
$.oneOf[0].allOf[1].Payload.anyOf[0].textTagsarray Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].textTags[]string No
$.oneOf[0].allOf[1].Payload.anyOf[0].databaseTagsNotificationDatabaseTags Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].databaseTags.anyOf[0]array Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].databaseTags.anyOf[1]object Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].databaseTags.anyOf[1].*NotificationTagValue No
$.oneOf[0].allOf[1].Payload.anyOf[0].databaseTags.anyOf[1].*.anyOf[0]null No
$.oneOf[0].allOf[1].Payload.anyOf[0].databaseTags.anyOf[1].*.anyOf[1]string No
$.oneOf[0].allOf[1].Payload.anyOf[0].databaseTags.anyOf[1].*.anyOf[2]number No
$.oneOf[0].allOf[1].Payload.anyOf[0].databaseTags.anyOf[1].*.anyOf[3]boolean No
$.oneOf[0].allOf[1].Payload.anyOf[0].databaseTags.anyOf[1].*.anyOf[4]array No
$.oneOf[0].allOf[1].Payload.anyOf[0].databaseTags.anyOf[1].*.anyOf[4][]NotificationTagValue No
$.oneOf[0].allOf[1].Payload.anyOf[0].databaseTags.anyOf[1].*.anyOf[5]object No
$.oneOf[0].allOf[1].Payload.anyOf[0].databaseTags.anyOf[1].*.anyOf[5].*NotificationTagValue No
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTagsarray Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[]object No
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].rawstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].labelstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].colorstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].linkstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].legacyLinkstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].selectedboolean Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].intelligentTag Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].intelligentTag.anyOf[0] = false Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].intelligentTag.anyOf[1]object Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].intelligentTag.anyOf[1].ID Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].intelligentTag.anyOf[1].ID.anyOf[0] = false Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].intelligentTag.anyOf[1].ID.anyOf[1]integer Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].intelligentTag.anyOf[1].ID.anyOf[2]string Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].intelligentTag.anyOf[1].CustomIcon Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].intelligentTag.anyOf[1].CustomIcon.anyOf[0] = false Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].intelligentTag.anyOf[1].CustomIcon.anyOf[1]string Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].intelligentTag.anyOf[1].CustomViewType Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].intelligentTag.anyOf[1].CustomViewType.anyOf[0] = false Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].intelligentTag.anyOf[1].CustomViewType.anyOf[1]string Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].intelligentTag.anyOf[1].Name Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].intelligentTag.anyOf[1].Name.anyOf[0] = false Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].intelligentTag.anyOf[1].Name.anyOf[1]string Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].processedTags[].intelligentTag.anyOf[1].CustomColorstring No
$.oneOf[0].allOf[1].Payload.anyOf[0].summaryFunctionsarray Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].summaryFunctions[]object No
$.oneOf[0].allOf[1].Payload.anyOf[0].summaryFunctions[].namestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].summaryFunctions[].valuenumber Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].summaryFunctions[].formattedValuestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].summaryFunctions[].format Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].summaryFunctions[].format.anyOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].summaryFunctions[].format.anyOf[1]string Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].summaryFunctions[].formatKeystring ["usd","short-usd","abbreviated-usd","abbreviated-usd-accounting","abbreviated-usd-accounting-balance","short-localized-currency-converted-from-usd","abbreviated-localized-currency-converted-from-usd","localized-currency-short","abbreviated-number","short-number","decimal-number","short-decimal-number","short-percentage","decimal-percentage","four-decimal-percentage","default"] Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].summaryFunctions[].function = "SUM" Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].mediaarray Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].media[]object No
$.oneOf[0].allOf[1].Payload.anyOf[0].media[].idinteger Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].media[].thumbUrlstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].media[].mediaUrlstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].media[].mediaTypestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].media[].widthinteger Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].media[].heightinteger Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].media[].titlestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].recipientSummaryobject Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].recipientSummary.recipientCountinteger Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].recipientSummary.firstRecipientUserID Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].recipientSummary.firstRecipientUserID.anyOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].recipientSummary.firstRecipientUserID.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].recipientSummary.firstRecipientAlias Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].recipientSummary.firstRecipientAlias.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].recipientSummary.firstRecipientAlias.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].recipientSummary.firstRecipientAvatar Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].recipientSummary.firstRecipientAvatar.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].recipientSummary.firstRecipientAvatar.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].recipientSummary.firstRecipientStatestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].recipientSummary.firstRecipientStateDate Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].recipientSummary.firstRecipientStateDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].recipientSummary.firstRecipientStateDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].recipientSummary.moreCountinteger Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].hasActionButtonsboolean Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtonsarray Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[]object No
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].ActionButtonIDinteger Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].NotificationIDinteger Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].NotificationBodyIDinteger Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].ActionButtonNamestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].Namestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].AdditionalTextstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].CustomInfoIconstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].ConfirmTitlestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].ConfirmTextstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].ConfirmButtonTextstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].LoadingTextstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].CustomActionstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].CustomActionParameterstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].BackgroundColorstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].TextColorstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].Importancestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].Clickableboolean Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].DatabaseTagsNotificationDatabaseTags Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].DatabaseTags.anyOf[0]array Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].DatabaseTags.anyOf[1]object Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].DatabaseTags.anyOf[1].*NotificationTagValue No
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].DatabaseTags.anyOf[1].*.anyOf[0]null No
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].DatabaseTags.anyOf[1].*.anyOf[1]string No
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].DatabaseTags.anyOf[1].*.anyOf[2]number No
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].DatabaseTags.anyOf[1].*.anyOf[3]boolean No
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].DatabaseTags.anyOf[1].*.anyOf[4]array No
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].DatabaseTags.anyOf[1].*.anyOf[4][]NotificationTagValue No
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].DatabaseTags.anyOf[1].*.anyOf[5]object No
$.oneOf[0].allOf[1].Payload.anyOf[0].actionButtons[].DatabaseTags.anyOf[1].*.anyOf[5].*NotificationTagValue No
$.oneOf[0].allOf[1].Payload.anyOf[0].translationobject Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.eligibleboolean Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.statestring ["done","eligible","none"] Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.cachedboolean Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.contextstring ["chat","notification"] Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.endpointstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.notificationIDinteger Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.notificationBodyIDinteger Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.chatIDinteger Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.sourceLanguageDetectionConfidence Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.sourceLanguageDetectionConfidence.anyOf[0]number Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.sourceLanguageDetectionConfidence.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.liveTranslationSourceEnabledboolean Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.targetLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.targetLanguageNamestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.receiverLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.senderLocaleCodestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.senderLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.sourceLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.sourceLanguageDetectionStatusstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.sourceContentHashstring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.titlestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.bodystring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.originalTitlestring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].translation.originalBodystring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].notificationTypeSlug Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].notificationTypeSlug.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].notificationTypeSlug.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].notificationTypeLabel Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].notificationTypeLabel.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].notificationTypeLabel.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].defaultPrioritystring ["default","normal","priority","high"] Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].effectivePrioritystring ["default","normal","priority","high"] Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].typePriorityPreferencestring ["default","normal","priority","high"] Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].canAdjustPriorityboolean Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].suppressPersistentOverlayboolean Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].plainTextBodystring Yes
$.oneOf[0].allOf[1].Payload.anyOf[0].hasRecipientsboolean Yes
$.oneOf[0].allOf[1].Payload.anyOf[1] = false Yes
$.oneOf[1]object Yes
$.oneOf[1].RequestUserAliasstring Yes
$.oneOf[1].RequestPathstring | null Yes
$.oneOf[1].RequestStatus = "Failed" Yes
$.oneOf[1].ResponseCodeinteger Yes
$.oneOf[1].ResponseMessageAPIResponseMessage Yes
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[1].ResponseMessage.oneOf[1]array Yes
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Yes
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Response example
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/notification/get_detail",
    "RequestUserAlias": "example-user",
    "Payload": {
        "notificationID": 0,
        "notificationBodyID": 0,
        "createdDate": "synthetic-example",
        "lastUpdateDate": "synthetic-example",
        "readTime": "synthetic-example",
        "readState": "synthetic-example",
        "isUnread": false,
        "title": "synthetic-example",
        "body": "synthetic-example",
        "bodyPreview": "synthetic-example",
        "destinationURL": "synthetic-example",
        "messageGroupID": 0,
        "tagsRaw": [],
        "textTags": [],
        "databaseTags": [],
        "processedTags": [],
        "summaryFunctions": [],
        "media": [],
        "recipientSummary": {
            "recipientCount": 0,
            "firstRecipientUserID": 0,
            "firstRecipientAlias": "synthetic-example",
            "firstRecipientAvatar": "synthetic-example",
            "firstRecipientState": "synthetic-example",
            "firstRecipientStateDate": "synthetic-example",
            "moreCount": 0
        },
        "hasActionButtons": false,
        "actionButtons": [],
        "translation": {
            "eligible": false,
            "state": "done",
            "cached": false,
            "context": "chat",
            "endpoint": "synthetic-example",
            "notificationID": 0,
            "notificationBodyID": 0,
            "chatID": 0,
            "sourceLanguageDetectionConfidence": 0,
            "liveTranslationSourceEnabled": false,
            "targetLanguageCode": "synthetic-example",
            "targetLanguageName": "synthetic-example",
            "receiverLanguageCode": "synthetic-example",
            "senderLocaleCode": "synthetic-example",
            "senderLanguageCode": "synthetic-example",
            "sourceLanguageCode": "synthetic-example",
            "sourceLanguageDetectionStatus": "synthetic-example",
            "sourceContentHash": "synthetic-example",
            "title": "synthetic-example",
            "body": "synthetic-example",
            "originalTitle": "synthetic-example",
            "originalBody": "synthetic-example"
        },
        "notificationTypeSlug": "synthetic-example",
        "notificationTypeLabel": "synthetic-example",
        "defaultPriority": "default",
        "effectivePriority": "default",
        "typePriorityPreference": "default",
        "canAdjustPriority": false,
        "suppressPersistentOverlay": false,
        "plainTextBody": "synthetic-example",
        "hasRecipients": false
    }
}
Machine-readable endpoint documentation
GET

/v1/notification/get_list

#
Returns the most recent notifications for the authenticated user. The result is a single list sorted newest-first. Each item carries a readState ('Created' | 'Pushed' | 'SentViaEmail' | 'Read') and an isUnread boolean so consumers can render new vs. read in one pass. Pagination: pass offset to fetch older pages. MetaInformation.hasMore is true only when another page exists beyond the returned items. Calling this endpoint does NOT mark any notifications as read — use notification/set_readstate for that.

Parameters

NameTypeRequiredDefaultDescription
pageSize int No 50 Max results to return (clamped to 1..250)
includeRead bool No true If false, returns only unread notifications.
offset int No 0 Skip this many results (for lazy/infinite pagination).
tags string No "" Optional comma-separated list of tag names to filter by, e.g. "Bids,Action Required". Empty = no filter.
readState string No "all" all, unread, or read. all preserves includeRead behavior for older callers.
includeSummary bool No false If true, MetaInformation includes selected tags and formatted summary functions for the returned rows.
includeActions bool No false If true, each row includes executable action-button DTOs.
includeTags bool No true If true, each row includes processed display tags.
appointmentID int No 0 Optional appointment database tag filter for transaction-scoped history.
getParametersJson string No "" Optional validated notification-root context used only while action-button DTOs are generated.
Request example (cURL)
curl --get \
  'https://ca.appointmenttrader.com/v1/notification/get_list' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'pageSize={{pageSize}}' \
  --data-urlencode 'includeRead={{includeRead}}' \
  --data-urlencode 'offset={{offset}}' \
  --data-urlencode 'tags={{tags}}' \
  --data-urlencode 'readState={{readState}}' \
  --data-urlencode 'includeSummary={{includeSummary}}' \
  --data-urlencode 'includeActions={{includeActions}}' \
  --data-urlencode 'includeTags={{includeTags}}' \
  --data-urlencode 'appointmentID={{appointmentID}}' \
  --data-urlencode 'getParametersJson={{getParametersJson}}'

Returns

JSON
See the shared response schema and synthetic example.
Parameters: getParametersJson
FieldTypeRequiredDescription
getParametersJsonstring (application/json) NoOptional JSON action-display context. Only overridePayoutMethodDialog=ShowRefundToReviewerDialog is accepted; other input is ignored.
getParametersJsonobject (decoded JSON) No
getParametersJson.overridePayoutMethodDialog = "ShowRefundToReviewerDialog" No
Response fields
FieldTypeRequiredDescription
$notification_get_list_Response Yes
$.oneOf[0] Yes
$.oneOf[0].allOf[0]object Yes
$.oneOf[0].allOf[0].RequestUserAliasstring Yes
$.oneOf[0].allOf[0].RequestPathstring | null Yes
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Yes
$.oneOf[0].allOf[0].ResponseCodeinteger Yes
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Yes
$.oneOf[0].allOf[1].Payloadobject YesNewest-first notifications belonging to the acting user. Does not mark them read. Access filtering can omit inaccessible board notifications after pagination. includeTags=false is overridden when tag filters are present; summary is present only with includeSummary=true.
$.oneOf[0].allOf[1].Payload.ATResponseObjectType = "NestedKeyValueList" Yes
$.oneOf[0].allOf[1].Payload.ResponseBodyobject Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.Name = "Recent Notifications" Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueListarray Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[]object No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].notificationIDinteger Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].notificationBodyIDinteger Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].createdDate Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].createdDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].createdDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].lastUpdateDate Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].lastUpdateDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].lastUpdateDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].readTime Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].readTime.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].readTime.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].readStatestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].isUnreadboolean Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].titlestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].bodystring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].bodyPreviewstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].destinationURLstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].messageGroupID Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].messageGroupID.anyOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].messageGroupID.anyOf[1]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].tagsRawNotificationStructuredTags Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].tagsRaw.anyOf[0]array Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].tagsRaw.anyOf[1]object Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].tagsRaw.anyOf[1].TextTagsarray No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].tagsRaw.anyOf[1].TextTags[]string No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].tagsRaw.anyOf[1].DatabaseTagsNotificationDatabaseTags No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].tagsRaw.anyOf[1].DatabaseTags.anyOf[0]array No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].tagsRaw.anyOf[1].DatabaseTags.anyOf[1]object No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*NotificationTagValue No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*.anyOf[0]null No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*.anyOf[1]string No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*.anyOf[2]number No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*.anyOf[3]boolean No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*.anyOf[4]array No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*.anyOf[4][]NotificationTagValue No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*.anyOf[5]object No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].tagsRaw.anyOf[1].DatabaseTags.anyOf[1].*.anyOf[5].*NotificationTagValue No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].textTagsarray Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].textTags[]string No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].databaseTagsNotificationDatabaseTags Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].databaseTags.anyOf[0]array Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].databaseTags.anyOf[1]object Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].databaseTags.anyOf[1].*NotificationTagValue No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].databaseTags.anyOf[1].*.anyOf[0]null No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].databaseTags.anyOf[1].*.anyOf[1]string No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].databaseTags.anyOf[1].*.anyOf[2]number No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].databaseTags.anyOf[1].*.anyOf[3]boolean No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].databaseTags.anyOf[1].*.anyOf[4]array No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].databaseTags.anyOf[1].*.anyOf[4][]NotificationTagValue No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].databaseTags.anyOf[1].*.anyOf[5]object No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].databaseTags.anyOf[1].*.anyOf[5].*NotificationTagValue No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTagsarray Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[]object No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].rawstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].labelstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].colorstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].linkstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].legacyLinkstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].selectedboolean Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].intelligentTag Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].intelligentTag.anyOf[0] = false Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].intelligentTag.anyOf[1]object Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].intelligentTag.anyOf[1].ID Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].intelligentTag.anyOf[1].ID.anyOf[0] = false Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].intelligentTag.anyOf[1].ID.anyOf[1]integer Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].intelligentTag.anyOf[1].ID.anyOf[2]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].intelligentTag.anyOf[1].CustomIcon Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].intelligentTag.anyOf[1].CustomIcon.anyOf[0] = false Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].intelligentTag.anyOf[1].CustomIcon.anyOf[1]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].intelligentTag.anyOf[1].CustomViewType Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].intelligentTag.anyOf[1].CustomViewType.anyOf[0] = false Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].intelligentTag.anyOf[1].CustomViewType.anyOf[1]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].intelligentTag.anyOf[1].Name Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].intelligentTag.anyOf[1].Name.anyOf[0] = false Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].intelligentTag.anyOf[1].Name.anyOf[1]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].processedTags[].intelligentTag.anyOf[1].CustomColorstring No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].summaryFunctionsarray Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].summaryFunctions[]object No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].summaryFunctions[].namestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].summaryFunctions[].valuenumber Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].summaryFunctions[].formattedValuestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].summaryFunctions[].format Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].summaryFunctions[].format.anyOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].summaryFunctions[].format.anyOf[1]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].summaryFunctions[].formatKeystring ["usd","short-usd","abbreviated-usd","abbreviated-usd-accounting","abbreviated-usd-accounting-balance","short-localized-currency-converted-from-usd","abbreviated-localized-currency-converted-from-usd","localized-currency-short","abbreviated-number","short-number","decimal-number","short-decimal-number","short-percentage","decimal-percentage","four-decimal-percentage","default"] Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].summaryFunctions[].function = "SUM" Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].mediaarray Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].media[]object No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].media[].idinteger Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].media[].thumbUrlstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].media[].mediaUrlstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].media[].mediaTypestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].media[].widthinteger Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].media[].heightinteger Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].media[].titlestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].recipientSummaryobject Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].recipientSummary.recipientCountinteger Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].recipientSummary.firstRecipientUserID Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].recipientSummary.firstRecipientUserID.anyOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].recipientSummary.firstRecipientUserID.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].recipientSummary.firstRecipientAlias Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].recipientSummary.firstRecipientAlias.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].recipientSummary.firstRecipientAlias.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].recipientSummary.firstRecipientAvatar Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].recipientSummary.firstRecipientAvatar.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].recipientSummary.firstRecipientAvatar.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].recipientSummary.firstRecipientStatestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].recipientSummary.firstRecipientStateDate Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].recipientSummary.firstRecipientStateDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].recipientSummary.firstRecipientStateDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].recipientSummary.moreCountinteger Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].hasActionButtonsboolean Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtonsarray Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[]object No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].ActionButtonIDinteger Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].NotificationIDinteger Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].NotificationBodyIDinteger Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].ActionButtonNamestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].Namestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].AdditionalTextstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].CustomInfoIconstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].ConfirmTitlestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].ConfirmTextstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].ConfirmButtonTextstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].LoadingTextstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].CustomActionstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].CustomActionParameterstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].BackgroundColorstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].TextColorstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].Importancestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].Clickableboolean Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].DatabaseTagsNotificationDatabaseTags Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].DatabaseTags.anyOf[0]array Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].DatabaseTags.anyOf[1]object Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].DatabaseTags.anyOf[1].*NotificationTagValue No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].DatabaseTags.anyOf[1].*.anyOf[0]null No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].DatabaseTags.anyOf[1].*.anyOf[1]string No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].DatabaseTags.anyOf[1].*.anyOf[2]number No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].DatabaseTags.anyOf[1].*.anyOf[3]boolean No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].DatabaseTags.anyOf[1].*.anyOf[4]array No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].DatabaseTags.anyOf[1].*.anyOf[4][]NotificationTagValue No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].DatabaseTags.anyOf[1].*.anyOf[5]object No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].actionButtons[].DatabaseTags.anyOf[1].*.anyOf[5].*NotificationTagValue No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translationobject Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.eligibleboolean Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.statestring ["done","eligible","none"] Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.cachedboolean Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.contextstring ["chat","notification"] Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.endpointstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.notificationIDinteger Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.notificationBodyIDinteger Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.chatIDinteger Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.sourceLanguageDetectionConfidence Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.sourceLanguageDetectionConfidence.anyOf[0]number Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.sourceLanguageDetectionConfidence.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.liveTranslationSourceEnabledboolean Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.targetLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.targetLanguageNamestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.receiverLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.senderLocaleCodestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.senderLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.sourceLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.sourceLanguageDetectionStatusstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.sourceContentHashstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.titlestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.bodystring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.originalTitlestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].translation.originalBodystring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].notificationTypeSlug Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].notificationTypeSlug.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].notificationTypeSlug.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].notificationTypeLabel Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].notificationTypeLabel.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].notificationTypeLabel.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].defaultPrioritystring ["default","normal","priority","high"] Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].effectivePrioritystring ["default","normal","priority","high"] Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].typePriorityPreferencestring ["default","normal","priority","high"] Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].canAdjustPriorityboolean Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].suppressPersistentOverlayboolean Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueFieldListarray Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformationobject Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.pageSizeinteger Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.offsetinteger Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.readStatestring ["all","unread","read"] Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.includeReadboolean Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.includeTagsboolean Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.appointmentIDinteger Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.hasMoreboolean Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTagsarray Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[]object No
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].rawstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].labelstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].colorstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].linkstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].legacyLinkstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].selectedboolean Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].intelligentTag Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].intelligentTag.anyOf[0] = false Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].intelligentTag.anyOf[1]object Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].intelligentTag.anyOf[1].ID Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].intelligentTag.anyOf[1].ID.anyOf[0] = false Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].intelligentTag.anyOf[1].ID.anyOf[1]integer Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].intelligentTag.anyOf[1].ID.anyOf[2]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].intelligentTag.anyOf[1].CustomIcon Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].intelligentTag.anyOf[1].CustomIcon.anyOf[0] = false Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].intelligentTag.anyOf[1].CustomIcon.anyOf[1]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].intelligentTag.anyOf[1].CustomViewType Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].intelligentTag.anyOf[1].CustomViewType.anyOf[0] = false Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].intelligentTag.anyOf[1].CustomViewType.anyOf[1]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].intelligentTag.anyOf[1].Name Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].intelligentTag.anyOf[1].Name.anyOf[0] = false Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].intelligentTag.anyOf[1].Name.anyOf[1]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.selectedTags[].intelligentTag.anyOf[1].CustomColorstring No
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.summaryarray No
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.summary[]object No
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.summary[].namestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.summary[].valuenumber Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.summary[].formattedValuestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.summary[].format Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.summary[].format.anyOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.summary[].format.anyOf[1]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.summary[].formatKeystring ["usd","short-usd","abbreviated-usd","abbreviated-usd-accounting","abbreviated-usd-accounting-balance","short-localized-currency-converted-from-usd","abbreviated-localized-currency-converted-from-usd","localized-currency-short","abbreviated-number","short-number","decimal-number","short-decimal-number","short-percentage","decimal-percentage","four-decimal-percentage","default"] Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation.summary[].function = "SUM" Yes
$.oneOf[1]object Yes
$.oneOf[1].RequestUserAliasstring Yes
$.oneOf[1].RequestPathstring | null Yes
$.oneOf[1].RequestStatus = "Failed" Yes
$.oneOf[1].ResponseCodeinteger Yes
$.oneOf[1].ResponseMessageAPIResponseMessage Yes
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[1].ResponseMessage.oneOf[1]array Yes
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Yes
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Response example
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/notification/get_list",
    "RequestUserAlias": "example-user",
    "Payload": {
        "ATResponseObjectType": "NestedKeyValueList",
        "ResponseBody": {
            "Name": "Recent Notifications",
            "KeyValueList": [],
            "KeyValueFieldList": [],
            "MetaInformation": {
                "pageSize": 0,
                "offset": 0,
                "readState": "all",
                "includeRead": false,
                "includeTags": false,
                "appointmentID": 0,
                "hasMore": false,
                "selectedTags": []
            }
        }
    }
}
Machine-readable endpoint documentation
GET

/v1/notification/get_preview

#
Returns a compact, authenticated preview for one notification. Used by the ATV2 realtime preview banner after the WebSocket nudge tells the browser which notification row changed. The socket carries only the notification ID; this endpoint re-reads the row under the acting user so notification and chat text never travels on the unauthenticated WebSocket channel. Calling this endpoint does NOT mark the notification as read. requiresExplicitDismiss is true for Overlay Notification or Action Required tags unless the creation-time override was Normal; clients keep those previews until explicitly dismissed or opened.

Parameters

NameTypeRequiredDefaultDescription
notificationID int No 0 Notification row ID from the realtime nudge.
includeChatMessage bool No false If true and this is a chat notification, includes the persisted chat message DTO.
Request example (cURL)
curl --get \
  'https://ca.appointmenttrader.com/v1/notification/get_preview' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'notificationID={{notificationID}}' \
  --data-urlencode 'includeChatMessage={{includeChatMessage}}'

Returns

JSON
See the shared response schema and synthetic example.
Response fields
FieldTypeRequiredDescription
$notification_get_preview_Response Yes
$.oneOf[0] Yes
$.oneOf[0].allOf[0]object Yes
$.oneOf[0].allOf[0].RequestUserAliasstring Yes
$.oneOf[0].allOf[0].RequestPathstring | null Yes
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Yes
$.oneOf[0].allOf[0].ResponseCodeinteger Yes
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Yes
$.oneOf[0].allOf[1].Payloadobject YesOwned notification preview. Message is present only when includeChatMessage=true and the row is a chat message with a conversation ID; it is false if message access is unavailable.
$.oneOf[0].allOf[1].Payload.notificationIDinteger Yes
$.oneOf[0].allOf[1].Payload.notificationBodyIDinteger Yes
$.oneOf[0].allOf[1].Payload.typestring ["chat","notification"] Yes
$.oneOf[0].allOf[1].Payload.isUnreadboolean Yes
$.oneOf[0].allOf[1].Payload.readStatestring Yes
$.oneOf[0].allOf[1].Payload.requiresExplicitDismissboolean Yes
$.oneOf[0].allOf[1].Payload.createdDate Yes
$.oneOf[0].allOf[1].Payload.createdDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.createdDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.createdDateDisplaystring Yes
$.oneOf[0].allOf[1].Payload.titlestring Yes
$.oneOf[0].allOf[1].Payload.bodyPreviewstring Yes
$.oneOf[0].allOf[1].Payload.destinationURLstring Yes
$.oneOf[0].allOf[1].Payload.isChatMessageboolean Yes
$.oneOf[0].allOf[1].Payload.conversationID Yes
$.oneOf[0].allOf[1].Payload.conversationID.anyOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.conversationID.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.chatNamestring Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0]object Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0].eligibleboolean Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0].statestring ["done","eligible","none"] Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0].cachedboolean Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0].context = "chat-name" Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0].endpointstring Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0].chatIDinteger Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0].sourceLanguageDetectionStatusstring ["Detected","Pending"] Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0].sourceLanguageDetectionConfidencenull Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0].liveTranslationSourceEnabledboolean Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0].targetLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0].targetLanguageNamestring Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0].sourceLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0].sourceContentHashstring Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0].titlestring Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0].bodystring Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0].originalTitlestring Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[0].originalBodystring Yes
$.oneOf[0].allOf[1].Payload.chatNameTranslation.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.participantCountinteger Yes
$.oneOf[0].allOf[1].Payload.isUserToUserChatboolean Yes
$.oneOf[0].allOf[1].Payload.senderID Yes
$.oneOf[0].allOf[1].Payload.senderID.anyOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.senderID.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.senderAlias Yes
$.oneOf[0].allOf[1].Payload.senderAlias.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.senderAlias.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.senderAvatar Yes
$.oneOf[0].allOf[1].Payload.senderAvatar.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.senderAvatar.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0]object Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].idinteger Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].revisioninteger Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].customerIDinteger Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].sellerIDinteger Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].chatIDinteger Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].bidIDinteger Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].transactionIDinteger Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].titlestring Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].statusstring ["sent","in_progress","submitted","cancelled"] Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].submittedDate Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].submittedDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].submittedDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].urlstring Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].buyerIdentityHiddenboolean NoTrue when the authenticated viewer cannot see the buyer during the current response race.
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].buyerIdentityHiddenUntilinteger | null NoSaved current-round ClosesAt as Unix seconds; null when identity is visible. Reveal is authoritative only on a new response.
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].eventTypestring ["","sent","submitted","updated","cancelled"] Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].actorUserIDinteger Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[0].eventTextstring Yes
$.oneOf[0].allOf[1].Payload.CustomerSurvey.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.isSystemGeneratedboolean Yes
$.oneOf[0].allOf[1].Payload.hasMediaboolean Yes
$.oneOf[0].allOf[1].Payload.translation Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0]object Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].eligibleboolean Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].statestring ["done","eligible","none"] Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].cachedboolean Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].contextstring ["chat","notification"] Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].endpointstring Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].notificationIDinteger Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].notificationBodyIDinteger Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].chatIDinteger Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].sourceLanguageDetectionConfidence Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].sourceLanguageDetectionConfidence.anyOf[0]number Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].sourceLanguageDetectionConfidence.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].liveTranslationSourceEnabledboolean Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].targetLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].targetLanguageNamestring Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].receiverLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].senderLocaleCodestring Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].senderLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].sourceLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].sourceLanguageDetectionStatusstring Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].sourceContentHashstring Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].titlestring Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].bodystring Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].originalTitlestring Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[0].originalBodystring Yes
$.oneOf[0].allOf[1].Payload.translation.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.notificationTypeSlug Yes
$.oneOf[0].allOf[1].Payload.notificationTypeSlug.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.notificationTypeSlug.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.notificationTypeLabel Yes
$.oneOf[0].allOf[1].Payload.notificationTypeLabel.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.notificationTypeLabel.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.defaultPrioritystring ["default","normal","priority","high"] Yes
$.oneOf[0].allOf[1].Payload.effectivePrioritystring ["default","normal","priority","high"] Yes
$.oneOf[0].allOf[1].Payload.typePriorityPreferencestring ["default","normal","priority","high"] Yes
$.oneOf[0].allOf[1].Payload.canAdjustPriorityboolean Yes
$.oneOf[0].allOf[1].Payload.suppressPersistentOverlayboolean Yes
$.oneOf[0].allOf[1].Payload.Message No
$.oneOf[0].allOf[1].Payload.Message.anyOf[0] = false No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1]object No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].NotificationBodyIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CreatedDate Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CreatedDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CreatedDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CreatedDateDisplaystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].SenderID Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].SenderID.anyOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].SenderID.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].SenderAlias Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].SenderAlias.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].SenderAlias.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].SenderAvatar Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].SenderAvatar.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].SenderAvatar.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Subjectstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Bodystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].DestinationPagestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Mediaarray Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Media[]object No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Media[].idinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Media[].thumbUrlstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Media[].mediaUrlstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Media[].mediaTypestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Media[].widthinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Media[].heightinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Media[].titlestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtonsarray Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[]object No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].ActionButtonIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].NotificationIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].NotificationBodyIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].ActionButtonNamestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].Namestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].AdditionalTextstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].CustomInfoIconstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].ConfirmTitlestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].ConfirmTextstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].ConfirmButtonTextstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].LoadingTextstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].CustomActionstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].CustomActionParameterstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].BackgroundColorstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].TextColorstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].Importancestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].Clickableboolean Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].DatabaseTagsNotificationDatabaseTags Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].DatabaseTags.anyOf[0]array Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].DatabaseTags.anyOf[1]object Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].DatabaseTags.anyOf[1].*NotificationTagValue No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].DatabaseTags.anyOf[1].*.anyOf[0]null No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].DatabaseTags.anyOf[1].*.anyOf[1]string No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].DatabaseTags.anyOf[1].*.anyOf[2]number No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].DatabaseTags.anyOf[1].*.anyOf[3]boolean No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].DatabaseTags.anyOf[1].*.anyOf[4]array No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].DatabaseTags.anyOf[1].*.anyOf[4][]NotificationTagValue No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].DatabaseTags.anyOf[1].*.anyOf[5]object No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ActionButtons[].DatabaseTags.anyOf[1].*.anyOf[5].*NotificationTagValue No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0]object Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].idinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].revisioninteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].customerIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].sellerIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].chatIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].bidIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].transactionIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].titlestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].statusstring ["sent","in_progress","submitted","cancelled"] Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].submittedDate Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].submittedDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].submittedDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].urlstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].buyerIdentityHiddenboolean NoTrue when the authenticated viewer cannot see the buyer during the current response race.
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].buyerIdentityHiddenUntilinteger | null NoSaved current-round ClosesAt as Unix seconds; null when identity is visible. Reveal is authoritative only on a new response.
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].eventTypestring ["","sent","submitted","updated","cancelled"] Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].actorUserIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[0].eventTextstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CustomerSurvey.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Deliveryobject Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.NotificationID Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.NotificationID.anyOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.NotificationID.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.RecipientCountinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipientsarray Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[]object No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].NotificationID Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].NotificationID.anyOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].NotificationID.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].UserID Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].UserID.anyOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].UserID.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].Username Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].Username.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].Username.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].Statestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].CreatedDate Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].CreatedDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].CreatedDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].CreatedDateDisplaystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].LastUpdateDate Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].LastUpdateDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].LastUpdateDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].LastUpdateDateDisplaystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].PushSendTime Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].PushSendTime.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].PushSendTime.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].PushSendTimeDisplaystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].PushReceiveTime Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].PushReceiveTime.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].PushReceiveTime.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].PushReceiveTimeDisplaystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].PushOpenTime Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].PushOpenTime.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].PushOpenTime.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].PushOpenTimeDisplaystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].EmailSendTime Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].EmailSendTime.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].EmailSendTime.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].EmailSendTimeDisplaystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].EmailOpenTime Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].EmailOpenTime.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].EmailOpenTime.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].EmailOpenTimeDisplaystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].ReadTime Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].ReadTime.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].ReadTime.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].ReadTimeDisplaystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceiptsarray No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[]object No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].TranslationID Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].TranslationID.anyOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].TranslationID.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].LanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].LanguageNamestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].SourceLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].SourceContentHashstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].TranslatedTitlestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].TranslatedBodystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].SeenContextstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].Modelstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].FirstServedDate Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].FirstServedDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].FirstServedDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].LastServedDate Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].LastServedDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].LastServedDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].CompletedDate Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].CompletedDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].TranslationReceipts[].CompletedDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].identityHiddenboolean No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Delivery.Recipients[].identityHiddenUntilinteger | null No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[0]array Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1]object Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].targetTypestring ["post","chat_message"] Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].targetIdinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].viewerReactionKeystring ["","thumbs_up","heart","money_with_wings","laugh","wow","sad","angry"] Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].viewerHasReactedboolean Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].totalCountinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].countsobject Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].counts.thumbs_upinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].counts.heartinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].counts.money_with_wingsinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].counts.laughinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].counts.wowinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].counts.sadinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].counts.angryinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recentarray Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recent[]object No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recent[].userIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recent[].usernamestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recent[].reactionKeystring ["thumbs_up","heart","money_with_wings","laugh","wow","sad","angry"] Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recent[].reactionEmojistring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recent[].createdDate Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recent[].createdDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recent[].createdDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recent[].lastUpdateDate Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recent[].lastUpdateDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recent[].lastUpdateDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recent[].reactedDate Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recent[].reactedDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recent[].reactedDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recent[].createdDateDisplaystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recent[].lastUpdateDateDisplaystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Reactions.anyOf[1].recent[].reactedDateDisplaystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].IsSystemGeneratedboolean Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0]object Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].type = "reaction" Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].targetType = "chat_message" Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].targetNotificationBodyIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].actorUserIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].actionstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].reactionKeystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].reactionEmojistring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].targetPreviewstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[0]array Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1]object Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].targetTypestring ["post","chat_message"] Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].targetIdinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].viewerReactionKeystring ["","thumbs_up","heart","money_with_wings","laugh","wow","sad","angry"] Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].viewerHasReactedboolean Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].totalCountinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].countsobject Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].counts.thumbs_upinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].counts.heartinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].counts.money_with_wingsinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].counts.laughinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].counts.wowinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].counts.sadinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].counts.angryinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recentarray Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recent[]object No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recent[].userIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recent[].usernamestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recent[].reactionKeystring ["thumbs_up","heart","money_with_wings","laugh","wow","sad","angry"] Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recent[].reactionEmojistring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recent[].createdDate Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recent[].createdDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recent[].createdDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recent[].lastUpdateDate Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recent[].lastUpdateDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recent[].lastUpdateDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recent[].reactedDate Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recent[].reactedDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recent[].reactedDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recent[].createdDateDisplaystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recent[].lastUpdateDateDisplaystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[0].summary.anyOf[1].recent[].reactedDateDisplaystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ChatEvent.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ReplyContext Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ReplyContext.anyOf[0]object Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ReplyContext.anyOf[0].NotificationBodyIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ReplyContext.anyOf[0].SenderID Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ReplyContext.anyOf[0].SenderID.anyOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ReplyContext.anyOf[0].SenderID.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ReplyContext.anyOf[0].SenderAlias Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ReplyContext.anyOf[0].SenderAlias.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ReplyContext.anyOf[0].SenderAlias.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ReplyContext.anyOf[0].Previewstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ReplyContext.anyOf[0].HasMediaboolean Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ReplyContext.anyOf[0].IsUnavailableboolean Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ReplyContext.anyOf[0].IsDeletedboolean No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ReplyContext.anyOf[0].IsSystemGeneratedboolean No
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].ReplyContext.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0]object Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].eligibleboolean Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].statestring ["done","eligible","none"] Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].cachedboolean Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].contextstring ["chat","notification"] Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].endpointstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].notificationIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].notificationBodyIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].chatIDinteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].sourceLanguageDetectionConfidence Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].sourceLanguageDetectionConfidence.anyOf[0]number Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].sourceLanguageDetectionConfidence.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].liveTranslationSourceEnabledboolean Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].targetLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].targetLanguageNamestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].receiverLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].senderLocaleCodestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].senderLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].sourceLanguageCodestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].sourceLanguageDetectionStatusstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].sourceContentHashstring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].titlestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].bodystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].originalTitlestring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[0].originalBodystring Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].translation.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].Versioninteger Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].EditedDate Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].EditedDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].EditedDate.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].IsDeletedboolean Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CanEditboolean Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].CanDeleteboolean Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].EditDeadline Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].EditDeadline.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.Message.anyOf[1].EditDeadline.anyOf[1]null Yes
$.oneOf[1]object Yes
$.oneOf[1].RequestUserAliasstring Yes
$.oneOf[1].RequestPathstring | null Yes
$.oneOf[1].RequestStatus = "Failed" Yes
$.oneOf[1].ResponseCodeinteger Yes
$.oneOf[1].ResponseMessageAPIResponseMessage Yes
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[1].ResponseMessage.oneOf[1]array Yes
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Yes
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Response example
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/notification/get_preview",
    "RequestUserAlias": "example-user",
    "Payload": {
        "notificationID": 0,
        "notificationBodyID": 0,
        "type": "chat",
        "isUnread": false,
        "readState": "synthetic-example",
        "requiresExplicitDismiss": false,
        "createdDate": "synthetic-example",
        "createdDateDisplay": "synthetic-example",
        "title": "synthetic-example",
        "bodyPreview": "synthetic-example",
        "destinationURL": "synthetic-example",
        "isChatMessage": false,
        "conversationID": 0,
        "chatName": "synthetic-example",
        "chatNameTranslation": {
            "eligible": false,
            "state": "done",
            "cached": false,
            "context": "chat-name",
            "endpoint": "synthetic-example",
            "chatID": 0,
            "sourceLanguageDetectionStatus": "Detected",
            "sourceLanguageDetectionConfidence": null,
            "liveTranslationSourceEnabled": false,
            "targetLanguageCode": "synthetic-example",
            "targetLanguageName": "synthetic-example",
            "sourceLanguageCode": "synthetic-example",
            "sourceContentHash": "synthetic-example",
            "title": "synthetic-example",
            "body": "synthetic-example",
            "originalTitle": "synthetic-example",
            "originalBody": "synthetic-example"
        },
        "participantCount": 0,
        "isUserToUserChat": false,
        "senderID": 0,
        "senderAlias": "synthetic-example",
        "senderAvatar": "synthetic-example",
        "CustomerSurvey": {
            "id": 0,
            "revision": 0,
            "customerID": 0,
            "sellerID": 0,
            "chatID": 0,
            "bidID": 0,
            "transactionID": 0,
            "title": "synthetic-example",
            "status": "sent",
            "submittedDate": "synthetic-example",
            "url": "synthetic-example",
            "eventType": "",
            "actorUserID": 0,
            "eventText": "synthetic-example"
        },
        "isSystemGenerated": false,
        "hasMedia": false,
        "translation": {
            "eligible": false,
            "state": "done",
            "cached": false,
            "context": "chat",
            "endpoint": "synthetic-example",
            "notificationID": 0,
            "notificationBodyID": 0,
            "chatID": 0,
            "sourceLanguageDetectionConfidence": 0,
            "liveTranslationSourceEnabled": false,
            "targetLanguageCode": "synthetic-example",
            "targetLanguageName": "synthetic-example",
            "receiverLanguageCode": "synthetic-example",
            "senderLocaleCode": "synthetic-example",
            "senderLanguageCode": "synthetic-example",
            "sourceLanguageCode": "synthetic-example",
            "sourceLanguageDetectionStatus": "synthetic-example",
            "sourceContentHash": "synthetic-example",
            "title": "synthetic-example",
            "body": "synthetic-example",
            "originalTitle": "synthetic-example",
            "originalBody": "synthetic-example"
        },
        "notificationTypeSlug": "synthetic-example",
        "notificationTypeLabel": "synthetic-example",
        "defaultPriority": "default",
        "effectivePriority": "default",
        "typePriorityPreference": "default",
        "canAdjustPriority": false,
        "suppressPersistentOverlay": false
    }
}
Machine-readable endpoint documentation
GET

/v1/notification/get_recipients

#
Returns recipient/read-state information for one non-chat notification. A protected bid customer has null identity fields and identityHidden=true until the saved race closing time.

Parameters

NameTypeRequiredDefaultDescription
notificationID int No 0 Notification row ID.
Request example (cURL)
curl --get \
  'https://ca.appointmenttrader.com/v1/notification/get_recipients' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'notificationID={{notificationID}}'

Returns

JSON
See the shared response schema and synthetic example.
Response fields
FieldTypeRequiredDescription
$notification_get_recipients_Response Yes
$.oneOf[0] Yes
$.oneOf[0].allOf[0]object Yes
$.oneOf[0].allOf[0].RequestUserAliasstring Yes
$.oneOf[0].allOf[0].RequestPathstring | null Yes
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Yes
$.oneOf[0].allOf[0].ResponseCodeinteger Yes
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Yes
$.oneOf[0].allOf[1].Payloadobject Yes
$.oneOf[0].allOf[1].Payload.notificationIDinteger Yes
$.oneOf[0].allOf[1].Payload.recipientsarray Yes
$.oneOf[0].allOf[1].Payload.recipients[]object No
$.oneOf[0].allOf[1].Payload.recipients[].UserID Yes
$.oneOf[0].allOf[1].Payload.recipients[].UserID.anyOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.recipients[].UserID.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.recipients[].ATUser_ID Yes
$.oneOf[0].allOf[1].Payload.recipients[].ATUser_ID.anyOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.recipients[].ATUser_ID.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.recipients[].Usernamestring | null Yes
$.oneOf[0].allOf[1].Payload.recipients[].Statestring Yes
$.oneOf[0].allOf[1].Payload.recipients[].ReadTime Yes
$.oneOf[0].allOf[1].Payload.recipients[].ReadTime.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.recipients[].ReadTime.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.recipients[].identityHiddenboolean Yes
$.oneOf[0].allOf[1].Payload.recipients[].identityHiddenUntilinteger | null Yes
$.oneOf[1]object Yes
$.oneOf[1].RequestUserAliasstring Yes
$.oneOf[1].RequestPathstring | null Yes
$.oneOf[1].RequestStatus = "Failed" Yes
$.oneOf[1].ResponseCodeinteger Yes
$.oneOf[1].ResponseMessageAPIResponseMessage Yes
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[1].ResponseMessage.oneOf[1]array Yes
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Yes
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Response example
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/notification/get_recipients",
    "RequestUserAlias": "example-user",
    "Payload": {
        "notificationID": 0,
        "recipients": []
    }
}
Machine-readable endpoint documentation
GET

/v1/notification/get_type_preferences

#
Returns this user's notification type priority overrides. Overrides affect future messages only.
Request example (cURL)
curl --get \
  'https://ca.appointmenttrader.com/v1/notification/get_type_preferences' \
  --data-urlencode 'key={{API_KEY}}'

Returns

JSON
See the shared response schema and synthetic example.
Response fields
FieldTypeRequiredDescription
$notification_get_type_preferences_Response Yes
$.oneOf[0] Yes
$.oneOf[0].allOf[0]object Yes
$.oneOf[0].allOf[0].RequestUserAliasstring Yes
$.oneOf[0].allOf[0].RequestPathstring | null Yes
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Yes
$.oneOf[0].allOf[0].ResponseCodeinteger Yes
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Yes
$.oneOf[0].allOf[1].Payloadobject Yes
$.oneOf[0].allOf[1].Payload.preferencesarray Yes
$.oneOf[0].allOf[1].Payload.preferences[]object No
$.oneOf[0].allOf[1].Payload.preferences[].notificationTypeSlugstring Yes
$.oneOf[0].allOf[1].Payload.preferences[].notificationTypeLabelstring Yes
$.oneOf[0].allOf[1].Payload.preferences[].typePriorityPreferencestring ["default","normal","priority","high"] Yes
$.oneOf[1]object Yes
$.oneOf[1].RequestUserAliasstring Yes
$.oneOf[1].RequestPathstring | null Yes
$.oneOf[1].RequestStatus = "Failed" Yes
$.oneOf[1].ResponseCodeinteger Yes
$.oneOf[1].ResponseMessageAPIResponseMessage Yes
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[1].ResponseMessage.oneOf[1]array Yes
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Yes
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Response example
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/notification/get_type_preferences",
    "RequestUserAlias": "example-user",
    "Payload": {
        "preferences": []
    }
}
Machine-readable endpoint documentation
GET

/v1/notification/get_web_push_registration

#
Returns whether the current browser session already has a Web Push token. Android PWA clients call this on startup after browser notification permission has already been granted. It lets the app hide the notification enablement banner without exposing the Firebase token.
Request example (cURL)
curl --get \
  'https://ca.appointmenttrader.com/v1/notification/get_web_push_registration' \
  --data-urlencode 'key={{API_KEY}}'

Returns

JSON
See the shared response schema and synthetic example.
Response fields
FieldTypeRequiredDescription
$notification_get_web_push_registration_Response Yes
$.oneOf[0] Yes
$.oneOf[0].allOf[0]object Yes
$.oneOf[0].allOf[0].RequestUserAliasstring Yes
$.oneOf[0].allOf[0].RequestPathstring | null Yes
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Yes
$.oneOf[0].allOf[0].ResponseCodeinteger Yes
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Yes
$.oneOf[0].allOf[1].Payloadobject YesRegistration state for the current browser session. API key alone without that session returns hasSession=false.
$.oneOf[0].allOf[1].Payload.registeredboolean Yes
$.oneOf[0].allOf[1].Payload.hasSessionboolean Yes
$.oneOf[0].allOf[1].Payload.clientTypestring Yes
$.oneOf[0].allOf[1].Payload.lastUpdateDate Yes
$.oneOf[0].allOf[1].Payload.lastUpdateDate.anyOf[0]string Yes
$.oneOf[0].allOf[1].Payload.lastUpdateDate.anyOf[1]null Yes
$.oneOf[1]object Yes
$.oneOf[1].RequestUserAliasstring Yes
$.oneOf[1].RequestPathstring | null Yes
$.oneOf[1].RequestStatus = "Failed" Yes
$.oneOf[1].ResponseCodeinteger Yes
$.oneOf[1].ResponseMessageAPIResponseMessage Yes
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[1].ResponseMessage.oneOf[1]array Yes
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Yes
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Response example
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/notification/get_web_push_registration",
    "RequestUserAlias": "example-user",
    "Payload": {
        "registered": false,
        "hasSession": false,
        "clientType": "synthetic-example",
        "lastUpdateDate": "synthetic-example"
    }
}
Machine-readable endpoint documentation
POST

/v1/notification/set_action

#
Executes a non-chat notification action button owned by the caller. Preferred clients send actionButtonID from get_detail/get_list. For older notification actions that never created an action row, send notificationID plus actionButtonName; the server re-reads the row and validates the action before execution.

Parameters

NameTypeRequiredDefaultDescription
actionButtonID int No 0 ATNotificationIntelligentTagsActionButtons.ID when available.
notificationID int No 0 Notification row ID for rowless legacy actions.
actionButtonName string No "" ActionButton class name for rowless legacy actions.
getParametersJson string No "" Optional JSON object passed to OnConfirm. Legacy SQL escaping is accepted; malformed supplied JSON is rejected before execution.
globalParametersJson string No "" Optional JSON object passed to OnConfirm GlobalParameters. Malformed supplied JSON is rejected before execution.
isWritingRequest bool No false Required true to execute.
Request example (cURL)
curl --request POST \
  'https://ca.appointmenttrader.com/v1/notification/set_action' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'actionButtonID={{actionButtonID}}' \
  --data-urlencode 'notificationID={{notificationID}}' \
  --data-urlencode 'actionButtonName={{actionButtonName}}' \
  --data-urlencode 'getParametersJson={{getParametersJson}}' \
  --data-urlencode 'globalParametersJson={{globalParametersJson}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Returns

JSON
See the shared response schema and synthetic example.
Parameters: getParametersJson
FieldTypeRequiredDescription
getParametersJsonstring (application/json) NoJSON object with action-specific inputs. Fields are used only by the selected action; empty string means no inputs.
getParametersJsonobject (decoded JSON) No
getParametersJson.NoShowFeeAmountnumber NoNo-show fee in USD major units, converted to cents by the action.
getParametersJson.overridePayoutMethodDialog = "ShowRefundToReviewerDialog" No
getParametersJson.ReturnReasonstring No
getParametersJson.PaymentFeeAmount No
getParametersJson.PaymentFeeAmount.anyOf[0]number No
getParametersJson.PaymentFeeAmount.anyOf[1]string NoCurrency amount; dollar signs/spaces removed and decimal comma supported.
Parameters: globalParametersJson
FieldTypeRequiredDescription
globalParametersJsonstring (application/json) NoJSON-encoded object; empty string uses an empty object.
globalParametersJsonobject (decoded JSON) No
globalParametersJson.RefundUserAccountID No
globalParametersJson.RefundUserAccountID.anyOf[0]integer No
globalParametersJson.RefundUserAccountID.anyOf[1]string No
globalParametersJson.ReturnReasonstring No
globalParametersJson.PaymentFeeAmount No
globalParametersJson.PaymentFeeAmount.anyOf[0]number No
globalParametersJson.PaymentFeeAmount.anyOf[1]string No
globalParametersJson.RejectReasonstring No
globalParametersJson.sponsorshipContractTermsJsonstring No
globalParametersJson.sponsorshipContractTermsJsonobject (decoded JSON) No
globalParametersJson.sponsorshipContractTermsJson.directFirstYearPercent No
globalParametersJson.sponsorshipContractTermsJson.directFirstYearPercent.anyOf[0]number No
globalParametersJson.sponsorshipContractTermsJson.directFirstYearPercent.anyOf[1]string NoNumeric percentage, localized decimal comma accepted.
globalParametersJson.sponsorshipContractTermsJson.DirectSponsoree-FirstYearCommissionBasisPoints No
globalParametersJson.sponsorshipContractTermsJson.DirectSponsoree-FirstYearCommissionBasisPoints.anyOf[0]integer No
globalParametersJson.sponsorshipContractTermsJson.DirectSponsoree-FirstYearCommissionBasisPoints.anyOf[1]string NoNumeric basis points; used only when the corresponding percent field is absent.
globalParametersJson.sponsorshipContractTermsJson.directSecondYearPercent No
globalParametersJson.sponsorshipContractTermsJson.directSecondYearPercent.anyOf[0]number No
globalParametersJson.sponsorshipContractTermsJson.directSecondYearPercent.anyOf[1]string NoNumeric percentage, localized decimal comma accepted.
globalParametersJson.sponsorshipContractTermsJson.DirectSponsoree-SecondYearCommissionBasisPoints No
globalParametersJson.sponsorshipContractTermsJson.DirectSponsoree-SecondYearCommissionBasisPoints.anyOf[0]integer No
globalParametersJson.sponsorshipContractTermsJson.DirectSponsoree-SecondYearCommissionBasisPoints.anyOf[1]string NoNumeric basis points; used only when the corresponding percent field is absent.
globalParametersJson.sponsorshipContractTermsJson.directThirdYearPercent No
globalParametersJson.sponsorshipContractTermsJson.directThirdYearPercent.anyOf[0]number No
globalParametersJson.sponsorshipContractTermsJson.directThirdYearPercent.anyOf[1]string NoNumeric percentage, localized decimal comma accepted.
globalParametersJson.sponsorshipContractTermsJson.DirectSponsoree-ThirdYearCommissionBasisPoints No
globalParametersJson.sponsorshipContractTermsJson.DirectSponsoree-ThirdYearCommissionBasisPoints.anyOf[0]integer No
globalParametersJson.sponsorshipContractTermsJson.DirectSponsoree-ThirdYearCommissionBasisPoints.anyOf[1]string NoNumeric basis points; used only when the corresponding percent field is absent.
globalParametersJson.sponsorshipContractTermsJson.directResidualPercent No
globalParametersJson.sponsorshipContractTermsJson.directResidualPercent.anyOf[0]number No
globalParametersJson.sponsorshipContractTermsJson.directResidualPercent.anyOf[1]string NoNumeric percentage, localized decimal comma accepted.
globalParametersJson.sponsorshipContractTermsJson.DirectSponsoree-ResidualCommissionBasisPoints No
globalParametersJson.sponsorshipContractTermsJson.DirectSponsoree-ResidualCommissionBasisPoints.anyOf[0]integer No
globalParametersJson.sponsorshipContractTermsJson.DirectSponsoree-ResidualCommissionBasisPoints.anyOf[1]string NoNumeric basis points; used only when the corresponding percent field is absent.
globalParametersJson.sponsorshipContractTermsJson.indirectFirstYearPercent No
globalParametersJson.sponsorshipContractTermsJson.indirectFirstYearPercent.anyOf[0]number No
globalParametersJson.sponsorshipContractTermsJson.indirectFirstYearPercent.anyOf[1]string NoNumeric percentage, localized decimal comma accepted.
globalParametersJson.sponsorshipContractTermsJson.IndirectSponsoree-FirstYearCommissionBasisPoints No
globalParametersJson.sponsorshipContractTermsJson.IndirectSponsoree-FirstYearCommissionBasisPoints.anyOf[0]integer No
globalParametersJson.sponsorshipContractTermsJson.IndirectSponsoree-FirstYearCommissionBasisPoints.anyOf[1]string NoNumeric basis points; used only when the corresponding percent field is absent.
globalParametersJson.sponsorshipContractTermsJson.indirectSecondYearPercent No
globalParametersJson.sponsorshipContractTermsJson.indirectSecondYearPercent.anyOf[0]number No
globalParametersJson.sponsorshipContractTermsJson.indirectSecondYearPercent.anyOf[1]string NoNumeric percentage, localized decimal comma accepted.
globalParametersJson.sponsorshipContractTermsJson.IndirectSponsoree-SecondYearCommissionBasisPoints No
globalParametersJson.sponsorshipContractTermsJson.IndirectSponsoree-SecondYearCommissionBasisPoints.anyOf[0]integer No
globalParametersJson.sponsorshipContractTermsJson.IndirectSponsoree-SecondYearCommissionBasisPoints.anyOf[1]string NoNumeric basis points; used only when the corresponding percent field is absent.
globalParametersJson.sponsorshipContractTermsJson.indirectThirdYearPercent No
globalParametersJson.sponsorshipContractTermsJson.indirectThirdYearPercent.anyOf[0]number No
globalParametersJson.sponsorshipContractTermsJson.indirectThirdYearPercent.anyOf[1]string NoNumeric percentage, localized decimal comma accepted.
globalParametersJson.sponsorshipContractTermsJson.IndirectSponsoree-ThirdYearCommissionBasisPoints No
globalParametersJson.sponsorshipContractTermsJson.IndirectSponsoree-ThirdYearCommissionBasisPoints.anyOf[0]integer No
globalParametersJson.sponsorshipContractTermsJson.IndirectSponsoree-ThirdYearCommissionBasisPoints.anyOf[1]string NoNumeric basis points; used only when the corresponding percent field is absent.
globalParametersJson.sponsorshipContractTermsJson.indirectResidualPercent No
globalParametersJson.sponsorshipContractTermsJson.indirectResidualPercent.anyOf[0]number No
globalParametersJson.sponsorshipContractTermsJson.indirectResidualPercent.anyOf[1]string NoNumeric percentage, localized decimal comma accepted.
globalParametersJson.sponsorshipContractTermsJson.IndirectSponsoree-ResidualCommissionBasisPoints No
globalParametersJson.sponsorshipContractTermsJson.IndirectSponsoree-ResidualCommissionBasisPoints.anyOf[0]integer No
globalParametersJson.sponsorshipContractTermsJson.IndirectSponsoree-ResidualCommissionBasisPoints.anyOf[1]string NoNumeric basis points; used only when the corresponding percent field is absent.
globalParametersJson.sponsorshipContractTermsobject No
globalParametersJson.sponsorshipContractTerms.directFirstYearPercent No
globalParametersJson.sponsorshipContractTerms.directFirstYearPercent.anyOf[0]number No
globalParametersJson.sponsorshipContractTerms.directFirstYearPercent.anyOf[1]string NoNumeric percentage, localized decimal comma accepted.
globalParametersJson.sponsorshipContractTerms.DirectSponsoree-FirstYearCommissionBasisPoints No
globalParametersJson.sponsorshipContractTerms.DirectSponsoree-FirstYearCommissionBasisPoints.anyOf[0]integer No
globalParametersJson.sponsorshipContractTerms.DirectSponsoree-FirstYearCommissionBasisPoints.anyOf[1]string NoNumeric basis points; used only when the corresponding percent field is absent.
globalParametersJson.sponsorshipContractTerms.directSecondYearPercent No
globalParametersJson.sponsorshipContractTerms.directSecondYearPercent.anyOf[0]number No
globalParametersJson.sponsorshipContractTerms.directSecondYearPercent.anyOf[1]string NoNumeric percentage, localized decimal comma accepted.
globalParametersJson.sponsorshipContractTerms.DirectSponsoree-SecondYearCommissionBasisPoints No
globalParametersJson.sponsorshipContractTerms.DirectSponsoree-SecondYearCommissionBasisPoints.anyOf[0]integer No
globalParametersJson.sponsorshipContractTerms.DirectSponsoree-SecondYearCommissionBasisPoints.anyOf[1]string NoNumeric basis points; used only when the corresponding percent field is absent.
globalParametersJson.sponsorshipContractTerms.directThirdYearPercent No
globalParametersJson.sponsorshipContractTerms.directThirdYearPercent.anyOf[0]number No
globalParametersJson.sponsorshipContractTerms.directThirdYearPercent.anyOf[1]string NoNumeric percentage, localized decimal comma accepted.
globalParametersJson.sponsorshipContractTerms.DirectSponsoree-ThirdYearCommissionBasisPoints No
globalParametersJson.sponsorshipContractTerms.DirectSponsoree-ThirdYearCommissionBasisPoints.anyOf[0]integer No
globalParametersJson.sponsorshipContractTerms.DirectSponsoree-ThirdYearCommissionBasisPoints.anyOf[1]string NoNumeric basis points; used only when the corresponding percent field is absent.
globalParametersJson.sponsorshipContractTerms.directResidualPercent No
globalParametersJson.sponsorshipContractTerms.directResidualPercent.anyOf[0]number No
globalParametersJson.sponsorshipContractTerms.directResidualPercent.anyOf[1]string NoNumeric percentage, localized decimal comma accepted.
globalParametersJson.sponsorshipContractTerms.DirectSponsoree-ResidualCommissionBasisPoints No
globalParametersJson.sponsorshipContractTerms.DirectSponsoree-ResidualCommissionBasisPoints.anyOf[0]integer No
globalParametersJson.sponsorshipContractTerms.DirectSponsoree-ResidualCommissionBasisPoints.anyOf[1]string NoNumeric basis points; used only when the corresponding percent field is absent.
globalParametersJson.sponsorshipContractTerms.indirectFirstYearPercent No
globalParametersJson.sponsorshipContractTerms.indirectFirstYearPercent.anyOf[0]number No
globalParametersJson.sponsorshipContractTerms.indirectFirstYearPercent.anyOf[1]string NoNumeric percentage, localized decimal comma accepted.
globalParametersJson.sponsorshipContractTerms.IndirectSponsoree-FirstYearCommissionBasisPoints No
globalParametersJson.sponsorshipContractTerms.IndirectSponsoree-FirstYearCommissionBasisPoints.anyOf[0]integer No
globalParametersJson.sponsorshipContractTerms.IndirectSponsoree-FirstYearCommissionBasisPoints.anyOf[1]string NoNumeric basis points; used only when the corresponding percent field is absent.
globalParametersJson.sponsorshipContractTerms.indirectSecondYearPercent No
globalParametersJson.sponsorshipContractTerms.indirectSecondYearPercent.anyOf[0]number No
globalParametersJson.sponsorshipContractTerms.indirectSecondYearPercent.anyOf[1]string NoNumeric percentage, localized decimal comma accepted.
globalParametersJson.sponsorshipContractTerms.IndirectSponsoree-SecondYearCommissionBasisPoints No
globalParametersJson.sponsorshipContractTerms.IndirectSponsoree-SecondYearCommissionBasisPoints.anyOf[0]integer No
globalParametersJson.sponsorshipContractTerms.IndirectSponsoree-SecondYearCommissionBasisPoints.anyOf[1]string NoNumeric basis points; used only when the corresponding percent field is absent.
globalParametersJson.sponsorshipContractTerms.indirectThirdYearPercent No
globalParametersJson.sponsorshipContractTerms.indirectThirdYearPercent.anyOf[0]number No
globalParametersJson.sponsorshipContractTerms.indirectThirdYearPercent.anyOf[1]string NoNumeric percentage, localized decimal comma accepted.
globalParametersJson.sponsorshipContractTerms.IndirectSponsoree-ThirdYearCommissionBasisPoints No
globalParametersJson.sponsorshipContractTerms.IndirectSponsoree-ThirdYearCommissionBasisPoints.anyOf[0]integer No
globalParametersJson.sponsorshipContractTerms.IndirectSponsoree-ThirdYearCommissionBasisPoints.anyOf[1]string NoNumeric basis points; used only when the corresponding percent field is absent.
globalParametersJson.sponsorshipContractTerms.indirectResidualPercent No
globalParametersJson.sponsorshipContractTerms.indirectResidualPercent.anyOf[0]number No
globalParametersJson.sponsorshipContractTerms.indirectResidualPercent.anyOf[1]string NoNumeric percentage, localized decimal comma accepted.
globalParametersJson.sponsorshipContractTerms.IndirectSponsoree-ResidualCommissionBasisPoints No
globalParametersJson.sponsorshipContractTerms.IndirectSponsoree-ResidualCommissionBasisPoints.anyOf[0]integer No
globalParametersJson.sponsorshipContractTerms.IndirectSponsoree-ResidualCommissionBasisPoints.anyOf[1]string NoNumeric basis points; used only when the corresponding percent field is absent.
Response fields
FieldTypeRequiredDescription
$notification_set_action_Response Yes
$.oneOf[0] Yes
$.oneOf[0].allOf[0]object Yes
$.oneOf[0].allOf[0].RequestUserAliasstring Yes
$.oneOf[0].allOf[0].RequestPathstring | null Yes
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Yes
$.oneOf[0].allOf[0].ResponseCodeinteger Yes
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Yes
$.oneOf[0].allOf[1].Payloadobject YesUse an owned actionButtonID, or notificationID plus an advertised actionButtonName. Availability and authorization are rechecked before execution.
$.oneOf[0].allOf[1].Payload.ActionButtonIDinteger Yes
$.oneOf[0].allOf[1].Payload.RedirectURLstring Yes
$.oneOf[0].allOf[1].Payload.ClientActionstring Yes
$.oneOf[0].allOf[1].Payload.OpenChatDock Yes
$.oneOf[0].allOf[1].Payload.OpenChatDock.anyOf[0]object Yes
$.oneOf[0].allOf[1].Payload.OpenChatDock.anyOf[0].ChatIDinteger Yes
$.oneOf[0].allOf[1].Payload.OpenChatDock.anyOf[0].Namestring Yes
$.oneOf[0].allOf[1].Payload.OpenChatDock.anyOf[0].Layoutstring Yes
$.oneOf[0].allOf[1].Payload.OpenChatDock.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.NotificationIDinteger Yes
$.oneOf[1]object Yes
$.oneOf[1].RequestUserAliasstring Yes
$.oneOf[1].RequestPathstring | null Yes
$.oneOf[1].RequestStatus = "Failed" Yes
$.oneOf[1].ResponseCodeinteger Yes
$.oneOf[1].ResponseMessageAPIResponseMessage Yes
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[1].ResponseMessage.oneOf[1]array Yes
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Yes
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Response example
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/notification/set_action",
    "RequestUserAlias": "example-user",
    "Payload": {
        "ActionButtonID": 0,
        "RedirectURL": "synthetic-example",
        "ClientAction": "synthetic-example",
        "OpenChatDock": {
            "ChatID": 0,
            "Name": "synthetic-example",
            "Layout": "synthetic-example"
        },
        "NotificationID": 0
    }
}
Machine-readable endpoint documentation
POST

/v1/notification/set_all_read

#
Marks every unread non-chat notification for the authenticated user as read. The native v2 notifications dashboard calls this once on open so the page behaves like an inbox visit rather than only marking the first lazy-loaded page. Chat notifications are intentionally excluded; the v2 chat dock owns chat-read timing so merely opening the notifications dashboard does not clear message unread state.

Parameters

NameTypeRequiredDefaultDescription
isWritingRequest bool No false all set_[...] functions have this parameter - if false (which is default) the method will execute without writing any data. Set this parameter to true once you are sure that you tested your logic and want to execute a writing request
Request example (cURL)
curl --request POST \
  'https://ca.appointmenttrader.com/v1/notification/set_all_read' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Returns

JSON
See the shared response schema and synthetic example.
Response fields
FieldTypeRequiredDescription
$notification_set_all_read_Response Yes
$.oneOf[0] Yes
$.oneOf[0].allOf[0]object Yes
$.oneOf[0].allOf[0].RequestUserAliasstring Yes
$.oneOf[0].allOf[0].RequestPathstring | null Yes
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Yes
$.oneOf[0].allOf[0].ResponseCodeinteger Yes
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Yes
$.oneOf[0].allOf[1].Payloadobject Yes
$.oneOf[0].allOf[1].Payload.Markedinteger Yes
$.oneOf[1]object Yes
$.oneOf[1].RequestUserAliasstring Yes
$.oneOf[1].RequestPathstring | null Yes
$.oneOf[1].RequestStatus = "Failed" Yes
$.oneOf[1].ResponseCodeinteger Yes
$.oneOf[1].ResponseMessageAPIResponseMessage Yes
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[1].ResponseMessage.oneOf[1]array Yes
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Yes
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Response example
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/notification/set_all_read",
    "RequestUserAlias": "example-user",
    "Payload": {
        "Marked": 0
    }
}
Machine-readable endpoint documentation
POST

/v1/notification/set_delete

#
Soft-deletes one notification owned by the authenticated user. The notification row remains in ATNotifications for audit/history, but DeletedDate is set so native v2 notification lists and unread counts no longer show it.

Parameters

NameTypeRequiredDefaultDescription
notificationID int No 0 Notification row ID.
isWritingRequest bool No false Required true to execute.
Request example (cURL)
curl --request POST \
  'https://ca.appointmenttrader.com/v1/notification/set_delete' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'notificationID={{notificationID}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Returns

JSON
See the shared response schema and synthetic example.
Response fields
FieldTypeRequiredDescription
$notification_set_delete_Response Yes
$.oneOf[0] Yes
$.oneOf[0].allOf[0]object Yes
$.oneOf[0].allOf[0].RequestUserAliasstring Yes
$.oneOf[0].allOf[0].RequestPathstring | null Yes
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Yes
$.oneOf[0].allOf[0].ResponseCodeinteger Yes
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Yes
$.oneOf[0].allOf[1].Payloadobject Yes
$.oneOf[0].allOf[1].Payload.notificationIDinteger Yes
$.oneOf[0].allOf[1].Payload.deleted = true Yes
$.oneOf[1]object Yes
$.oneOf[1].RequestUserAliasstring Yes
$.oneOf[1].RequestPathstring | null Yes
$.oneOf[1].RequestStatus = "Failed" Yes
$.oneOf[1].ResponseCodeinteger Yes
$.oneOf[1].ResponseMessageAPIResponseMessage Yes
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[1].ResponseMessage.oneOf[1]array Yes
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Yes
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Response example
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/notification/set_delete",
    "RequestUserAlias": "example-user",
    "Payload": {
        "notificationID": 0,
        "deleted": true
    }
}
Machine-readable endpoint documentation
POST

/v1/notification/set_readstate

#
Changes the visibility of the notifications in the ID list In the portal private listings appear in the private section and public in 'Publicly traded listings'

Parameters

NameTypeRequiredDefaultDescription
commaSeperatedNotificationIDList string Yes — list of notificationID to be altered
readState string Yes — possible values are Created, Pushed, SentViaEmail or Read
isWritingRequest bool No false all set_[...] functions have this parameter - if false (which is default) the method will execute without writing any data. Set this parameter to true once you are sure that you tested your logic and want to execute a writing request
Request example (cURL)
curl --request POST \
  'https://ca.appointmenttrader.com/v1/notification/set_readstate' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'commaSeperatedNotificationIDList={{commaSeperatedNotificationIDList}}' \
  --data-urlencode 'readState={{readState}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Returns

JSON
See the shared response schema and synthetic example.
Response fields
FieldTypeRequiredDescription
$notification_set_readstate_Response Yes
$.oneOf[0] Yes
$.oneOf[0].allOf[0]object Yes
$.oneOf[0].allOf[0].RequestUserAliasstring Yes
$.oneOf[0].allOf[0].RequestPathstring | null Yes
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Yes
$.oneOf[0].allOf[0].ResponseCodeinteger Yes
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Yes
$.oneOf[0].allOf[1].Payload = true Yes
$.oneOf[1]object Yes
$.oneOf[1].RequestUserAliasstring Yes
$.oneOf[1].RequestPathstring | null Yes
$.oneOf[1].RequestStatus = "Failed" Yes
$.oneOf[1].ResponseCodeinteger Yes
$.oneOf[1].ResponseMessageAPIResponseMessage Yes
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[1].ResponseMessage.oneOf[1]array Yes
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Yes
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Response example
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/notification/set_readstate",
    "RequestUserAlias": "example-user",
    "Payload": true
}
Machine-readable endpoint documentation
POST

/v1/notification/set_type_priority

#
Sets the acting user's priority for future notifications of a registered type. Default removes the override. Existing notifications and pending deliveries retain their creation-time priority.

Parameters

NameTypeRequiredDefaultDescription
notificationTypeSlug string Yes — Stable type returned by get_list or get_type_preferences.
priority string No "default" default, normal, priority, or high. Normal also prevents persistent overlays.
isWritingRequest bool No false Must be true to save; false does not write.
Request example (cURL)
curl --request POST \
  'https://ca.appointmenttrader.com/v1/notification/set_type_priority' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'notificationTypeSlug={{notificationTypeSlug}}' \
  --data-urlencode 'priority={{priority}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Returns

JSON
See the shared response schema and synthetic example.
Parameters: priority
FieldTypeRequiredDescription
prioritystring ["default","normal","priority","high"] No
Response fields
FieldTypeRequiredDescription
$notification_set_type_priority_Response Yes
$.oneOf[0] Yes
$.oneOf[0].allOf[0]object Yes
$.oneOf[0].allOf[0].RequestUserAliasstring Yes
$.oneOf[0].allOf[0].RequestPathstring | null Yes
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Yes
$.oneOf[0].allOf[0].ResponseCodeinteger Yes
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Yes
$.oneOf[0].allOf[1].Payloadobject Yes
$.oneOf[0].allOf[1].Payload.notificationTypeSlugstring Yes
$.oneOf[0].allOf[1].Payload.typePriorityPreferencestring ["default","normal","priority","high"] Yes
$.oneOf[1]object Yes
$.oneOf[1].RequestUserAliasstring Yes
$.oneOf[1].RequestPathstring | null Yes
$.oneOf[1].RequestStatus = "Failed" Yes
$.oneOf[1].ResponseCodeinteger Yes
$.oneOf[1].ResponseMessageAPIResponseMessage Yes
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[1].ResponseMessage.oneOf[1]array Yes
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Yes
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Response example
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/notification/set_type_priority",
    "RequestUserAlias": "example-user",
    "Payload": {
        "notificationTypeSlug": "synthetic-example",
        "typePriorityPreference": "default"
    }
}
Machine-readable endpoint documentation
POST

/v1/notification/set_web_push_registration

#
Registers or clears the current browser session's Firebase Web Push token. Android PWA clients call this after the user grants browser notification permission. The token is stored on the current ATUserSession so the existing notification push job can fan out to it alongside native app device tokens.

Parameters

NameTypeRequiredDefaultDescription
registrationToken string No "" Firebase Web Push registration token. Empty clears the current Web Push registration unless permission is granted.
permission string No "default" Browser Notification.permission value: granted, denied, or default.
isWritingRequest bool No false Required true to execute.
Request example (cURL)
curl --request POST \
  'https://ca.appointmenttrader.com/v1/notification/set_web_push_registration' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'registrationToken={{registrationToken}}' \
  --data-urlencode 'permission={{permission}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Returns

JSON
See the shared response schema and synthetic example.
Response fields
FieldTypeRequiredDescription
$notification_set_web_push_registration_Response Yes
$.oneOf[0] Yes
$.oneOf[0].allOf[0]object Yes
$.oneOf[0].allOf[0].RequestUserAliasstring Yes
$.oneOf[0].allOf[0].RequestPathstring | null Yes
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Yes
$.oneOf[0].allOf[0].ResponseCodeinteger Yes
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Yes
$.oneOf[0].allOf[1].Payloadobject Yes
$.oneOf[0].allOf[1].Payload.registeredboolean Yes
$.oneOf[0].allOf[1].Payload.permissionstring ["granted","denied","default"] Yes
$.oneOf[0].allOf[1].Payload.clientTypestring ["WebPush","Not Specified"] Yes
$.oneOf[1]object Yes
$.oneOf[1].RequestUserAliasstring Yes
$.oneOf[1].RequestPathstring | null Yes
$.oneOf[1].RequestStatus = "Failed" Yes
$.oneOf[1].ResponseCodeinteger Yes
$.oneOf[1].ResponseMessageAPIResponseMessage Yes
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[1].ResponseMessage.oneOf[1]array Yes
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Yes
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Response example
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/notification/set_web_push_registration",
    "RequestUserAlias": "example-user",
    "Payload": {
        "registered": false,
        "permission": "granted",
        "clientType": "WebPush"
    }
}
Machine-readable endpoint documentation