{ "$schema": "http://json-schema.org/draft-07/schema#", "title": "Listrak Email API Schemas", "definitions": { "Campaign": { "description": "A Campaign resource.", "required": [ "campaignName" ], "type": "object", "properties": { "campaignId": { "format": "int32", "description": "Identifier used to locate the campaign.", "type": "integer", "readOnly": true }, "campaignName": { "description": "Name of the campaign.", "type": "string" } } }, "ResourceCreated": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "resourceId": { "description": "An identifier used to locate a resource.", "type": "string" } } }, "Error": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "error": { "description": "Error code indicating what error has occured.", "type": "string" }, "message": { "description": "Message describing the status and the error that occurred.", "type": "string" } } }, "Collection[Campaign]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/Campaign" } } } }, "Resource[Campaign]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/Campaign", "description": "Return data." } } }, "ResourceUpdated": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "resourceId": { "description": "An identifier used to locate the updated resource.", "type": "string" } } }, "ResourceDeleted": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" } } }, "Contact": { "description": "A Contact resource.", "required": [ "emailAddress", "segmentationFieldValues" ], "type": "object", "properties": { "emailAddress": { "description": "Email address of the contact.", "type": "string" }, "emailKey": { "description": "Listrak email key of the contact.", "type": "string", "readOnly": true }, "universalEmailKey": { "description": "SHA256 hashed email address.", "type": "string", "readOnly": true }, "subscriptionState": { "description": "Subscription state of the contact. Allowed values are `Subscribed` and `Unsubscribed`.", "type": "string" }, "subscribeDate": { "format": "date-time", "description": "Subscribe date of the contact.", "type": "string", "readOnly": true }, "resubscribeDate": { "format": "date-time", "description": "ReSubscribe date of the contact.", "type": "string", "readOnly": true }, "subscribeMethod": { "description": "Subscribe method of the contact.", "type": "string", "readOnly": true }, "unsubscribeDate": { "format": "date-time", "description": "Unsubscribe date of the contact.", "type": "string", "readOnly": true }, "unsubscribeMethod": { "description": "Unsubscribe method of the contact.", "type": "string", "readOnly": true }, "externalContactID": { "description": "External contact ID provided by the client", "type": "string" }, "segmentationFieldValues": { "description": "Profile field values associated with the contact.", "type": "array", "items": { "$ref": "#/definitions/SegmentationFieldValue" } } } }, "SegmentationFieldValue": { "description": "A Profile Field Value resource.", "required": [ "segmentationFieldId", "value" ], "type": "object", "properties": { "segmentationFieldGroupId": { "format": "int32", "description": "Identifier of the profile field group.", "type": "integer", "readOnly": true }, "segmentationFieldId": { "format": "int32", "description": "Identifier of the profile field.", "type": "integer" }, "value": { "description": "Value of the profile field.", "type": "string" } } }, "CollectionPaged[Contact]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "nextPageCursor": { "description": "URI of the next page of data.", "type": "string" }, "data": { "description": "Collection of data that exists on this paged view.", "type": "array", "items": { "$ref": "#/definitions/Contact" } } } }, "Resource[Contact]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/Contact", "description": "Return data." } } }, "ContactSegmentationFieldValues": { "description": "A Contact with profile field values.", "required": [ "emailAddress", "segmentationFieldValues" ], "type": "object", "properties": { "emailAddress": { "description": "Email address of the contact.", "type": "string" }, "segmentationFieldValues": { "description": "Profile field values associated with the contact.", "type": "array", "items": { "$ref": "#/definitions/ContactSegmentationFieldValue" } } } }, "ContactSegmentationFieldValue": { "description": "A contact's profile field value.", "required": [ "segmentationFieldId", "value" ], "type": "object", "properties": { "segmentationFieldId": { "format": "int32", "description": "Identifier of the profile field.", "type": "integer" }, "value": { "description": "Value of the profile field.", "type": "string" } } }, "ContentCreate": { "description": "Request model for creating content.", "required": [ "contentName" ], "type": "object", "properties": { "contentFolderId": { "format": "int32", "description": "Identifier of the content folder to place the content in.", "type": "integer" }, "contentName": { "description": "Name given to the content block.", "type": "string" }, "textContent": { "description": "Plain text content of the content block.", "type": "string" }, "htmlContent": { "description": "HTML content of the content block.", "type": "string" }, "contentType": { "description": "Type of the content block.", "enum": [ "DynamicContent", "SavedContent" ], "type": "string" } } }, "Collection[Content]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/Content" } } } }, "Content": { "description": "A content library resource.", "type": "object", "properties": { "contentId": { "format": "int32", "description": "Identifier used to locate the content.", "type": "integer" }, "contentFolderId": { "format": "int32", "description": "Identifier of the content folder.", "type": "integer" }, "contentName": { "description": "Name given to the content block.", "type": "string" }, "textContent": { "description": "Plain text content of the content block.", "type": "string" }, "htmlContent": { "description": "HTML content of the content block.", "type": "string" }, "contentType": { "description": "Type of the content block.", "enum": [ "DynamicContent", "SavedContent" ], "type": "string" }, "contentReadOnly": { "description": "Indicates whether the content is read-only due to use in a live dynamic content block.", "type": "boolean" }, "lastModifiedDate": { "format": "date-time", "description": "Date the content was last modified.", "type": "string" } } }, "Resource[Content]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/Content", "description": "Return data." } } }, "ContentUpdate": { "description": "Request model for updating content.", "type": "object", "properties": { "contentFolderId": { "format": "int32", "description": "Identifier of the content folder to place the content in.", "type": "integer" }, "contentName": { "description": "Name given to the content block.", "type": "string" }, "textContent": { "description": "Plain text content of the content block.", "type": "string" }, "htmlContent": { "description": "HTML content of the content block.", "type": "string" } } }, "Collection[ContentFolder]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/ContentFolder" } } } }, "ContentFolder": { "description": "A content library folder resource.", "type": "object", "properties": { "contentFolderId": { "format": "int32", "description": "Identifier used to locate the content folder.", "type": "integer" }, "listId": { "format": "int32", "description": "Identifier of the list this folder belongs to. Null indicates a company-level folder.", "type": "integer" }, "parentFolderId": { "format": "int32", "description": "Identifier of the parent folder. Null indicates the root folder.", "type": "integer" }, "folderName": { "description": "Name of the content folder.", "type": "string" } } }, "Collection[Conversation]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/Conversation" } } } }, "Conversation": { "description": "A Conversation resource.", "type": "object", "properties": { "conversationId": { "format": "int32", "description": "Identifier used to locate the conversation.", "type": "integer" }, "conversationName": { "description": "Name of the conversation.", "type": "string" }, "campaignId": { "format": "int32", "description": "Identifier of the campaign associated with the conversation.", "type": "integer" }, "expirationDate": { "format": "date-time", "description": "Expiration date of the conversation.", "type": "string" }, "status": { "description": "Current status of the conversation.", "type": "string" } } }, "Resource[Conversation]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/Conversation", "description": "Return data." } } }, "CollectionPaged[Message]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "nextPageCursor": { "description": "URI of the next page of data.", "type": "string" }, "data": { "description": "Collection of data that exists on this paged view.", "type": "array", "items": { "$ref": "#/definitions/Message" } } } }, "Message": { "description": "A Message resource.", "required": [ "externalCampaignId", "subject" ], "type": "object", "properties": { "messageId": { "format": "int32", "description": "Identifier used to locate the message.", "type": "integer", "readOnly": true }, "sendDate": { "format": "date-time", "description": "Send date of the message.", "type": "string", "readOnly": true }, "messageStatus": { "description": "Status displaying whether the message is sent or scheduled.", "type": "string", "readOnly": true }, "campaignId": { "format": "int32", "description": "Identifier of the campaign associated with the message.", "type": "integer" }, "externalCampaignId": { "description": "Customer-provided identifier of the campaign associated with the message.", "type": "string" }, "subject": { "description": "Subject of the message.", "type": "string" } } }, "Resource[MessageExtended]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/MessageExtended", "description": "Return data." } } }, "MessageExtended": { "description": "A Message resource.", "required": [ "externalCampaignId", "fromEmail", "fromName", "subject" ], "type": "object", "properties": { "messageId": { "format": "int32", "description": "Identifier used to locate the message.", "type": "integer", "readOnly": true }, "sendDate": { "format": "date-time", "description": "Send date of the message.", "type": "string", "readOnly": true }, "messageStatus": { "description": "Status displaying whether the message is sent or scheduled.", "type": "string", "readOnly": true }, "enableUniversalEmailKeySetting": { "description": "Whether to include UniversalEmailKey in URL query string.", "type": "boolean" }, "campaignId": { "format": "int32", "description": "Identifier of the campaign associated with the message.", "type": "integer" }, "bodyHtml": { "description": "HTML body that will be sent in the message.", "type": "string" }, "bodyText": { "description": "Text body that will be sent in the message.", "type": "string" }, "codePage": { "format": "int32", "description": "Type of CodePage used in the message.", "type": "integer" }, "enablePassalong": { "description": "Whether passalong is enabled.", "type": "boolean" }, "enableTracking": { "description": "Whether tracking is enabled.", "type": "boolean" }, "externalCampaignId": { "description": "Customer-provided identifier of the campaign associated with the message.", "type": "string" }, "fromEmail": { "description": "The _from email address_ that will be used for the message.", "type": "string" }, "fromName": { "description": "The _from name_ that will be used for the message.", "type": "string" }, "googleAnalyticsCampaignName": { "description": "The Google Analytics campaign name to be used for message tracking.", "type": "string" }, "googleAnalyticsCampaignContent": { "description": "The Google Analytics campaign content to be used for message tracking.", "type": "string" }, "replyEmail": { "description": "The _reply email address_ that will be used for the message.", "type": "string" }, "savedAudienceId": { "format": "int32", "description": "Identifier of the SavedAudience to use for recipient filtering.", "type": "integer" }, "subject": { "description": "Subject of the message.", "type": "string" }, "toName": { "description": "The _to name_ that will be used for the message.", "type": "string" } } }, "CollectionPaged[MessageActivity]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "nextPageCursor": { "description": "URI of the next page of data.", "type": "string" }, "data": { "description": "Collection of data that exists on this paged view.", "type": "array", "items": { "$ref": "#/definitions/MessageActivity" } } } }, "MessageActivity": { "description": "A Message Activity resource.", "type": "object", "properties": { "abuse": { "description": "Whether the message was marked as abuse by the contact.", "type": "boolean" }, "activityDate": { "format": "date-time", "description": "Date of first activity by the contact.", "type": "string" }, "bounce": { "description": "Whether the message bounced for the contact.", "type": "boolean" }, "bounceReason": { "description": "Reason why the message bounced.", "type": "string" }, "click": { "description": "Whether the message was clicked by the contact.", "type": "boolean" }, "clickCount": { "format": "int32", "description": "Number of clicks made by the contact.", "type": "integer" }, "emailAddress": { "description": "Email address of the contact.", "type": "string" }, "open": { "description": "Whether the message was opened by the contact.", "type": "boolean" }, "orderTotal": { "format": "double", "description": "Order total associated with the message for the contact.", "type": "number" }, "read": { "description": "Whether the message was read by the contact.", "type": "boolean" }, "sendDate": { "format": "date-time", "description": "Send date of the message.", "type": "string" }, "unsubscribe": { "description": "Whether the message caused an unsubscribe by the contact.", "type": "boolean" }, "visitDate": { "format": "date-time", "description": "DEPRECATED as of June 2020", "type": "string" }, "externalContactID": { "description": "The external contact ID provided by a 3rd party", "type": "string" } } }, "Collection[MessageLink]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/MessageLink" } } } }, "MessageLink": { "description": "A Message Link resource.", "type": "object", "properties": { "linkId": { "format": "int32", "description": "Identifier used to locate the Link.", "type": "integer" }, "linkDescription": { "description": "Description of the Link.", "type": "string" }, "linkUrl": { "description": "URL of the Link.", "type": "string" }, "clickCount": { "format": "int32", "description": "The number of clicks for the Link.", "type": "integer" } } }, "CollectionPaged[MessageLink]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "nextPageCursor": { "description": "URI of the next page of data.", "type": "string" }, "data": { "description": "Collection of data that exists on this paged view.", "type": "array", "items": { "$ref": "#/definitions/MessageLink" } } } }, "Resource[MessageLink]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/MessageLink", "description": "Return data." } } }, "Resource[MessageLinkClicker]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/MessageLinkClicker", "description": "Return data." } } }, "MessageLinkClicker": { "description": "A Message Link Clicker resource.", "type": "object", "properties": { "emailAddress": { "description": "Email address of the contact.", "type": "string" }, "clickDate": { "format": "date-time", "description": "Date on which the click occurred.", "type": "string" } } }, "CollectionPaged[MessageLinkClicker]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "nextPageCursor": { "description": "URI of the next page of data.", "type": "string" }, "data": { "description": "Collection of data that exists on this paged view.", "type": "array", "items": { "$ref": "#/definitions/MessageLinkClicker" } } } }, "Resource[MessageSummary]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/MessageSummary", "description": "Return data." } } }, "MessageSummary": { "description": "A Message Summary resource.", "type": "object", "properties": { "averageOrderValue": { "format": "double", "description": "Average order value associated with the message.", "type": "number" }, "bounceCount": { "format": "int32", "description": "The number of bounces for the message.", "type": "integer" }, "clickCount": { "format": "int32", "description": "The number of clicks for the message.", "type": "integer" }, "conversionCount": { "format": "int32", "description": "The number of conversions for the message.", "type": "integer" }, "openCount": { "format": "int32", "description": "The number of opens for the message.", "type": "integer" }, "passAlongCount": { "format": "int32", "description": "The number of passalongs for the message.", "type": "integer" }, "readCount": { "format": "int32", "description": "The number of reads for the message.", "type": "integer" }, "revenue": { "format": "double", "description": "Total revenue associated with the message.", "type": "number" }, "sentCount": { "format": "int32", "description": "The number of times the message was sent.", "type": "integer" }, "unsubscribeCount": { "format": "int32", "description": "The number of unsubscribes for the message.", "type": "integer" }, "visitCount": { "format": "int32", "description": "The number of site visits as a result of the message.", "type": "integer" } } }, "Resource[ConversationSummary]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/ConversationSummary", "description": "Return data." } } }, "ConversationSummary": { "description": "A Conversation Summary resource", "type": "object", "properties": { "averageOrderValue": { "format": "double", "description": "Average order value associated with the conversation.", "type": "number" }, "bounceCount": { "format": "int32", "description": "The number of bounces for the conversation.", "type": "integer" }, "clickCount": { "format": "int32", "description": "The number of clicks for the conversation.", "type": "integer" }, "conversionCount": { "format": "int32", "description": "The number of conversions for the conversation.", "type": "integer" }, "deliveredCount": { "format": "int32", "description": "The number of messages delivered for the conversation.", "type": "integer" }, "openCount": { "format": "int32", "description": "The number of opens for the conversation.", "type": "integer" }, "readCount": { "format": "int32", "description": "The number of reads for the conversation.", "type": "integer" }, "revenue": { "format": "double", "description": "Total revenue associated with the conversation.", "type": "number" }, "sentCount": { "format": "int32", "description": "The number of messages sent during the conversation.", "type": "integer" }, "unsubscribeCount": { "format": "int32", "description": "The number of unsubscribes for the conversation.", "type": "integer" }, "visitCount": { "format": "int32", "description": "The number of site visits as a result of the conversation.", "type": "integer" } } }, "Event": { "description": "An Event resource.", "required": [ "eventName", "status" ], "type": "object", "properties": { "eventId": { "format": "int32", "description": "Identifier used to locate the event.", "type": "integer", "readOnly": true }, "eventName": { "description": "Name given to the event.", "type": "string" }, "eventGroupId": { "format": "int32", "description": "Identifier of the event group associated with the event.", "type": "integer" }, "status": { "description": "Status of the event. Allowed values are `Active` and `Blocked`.", "type": "string" } } }, "Collection[Event]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/Event" } } } }, "Resource[Event]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/Event", "description": "Return data." } } }, "EventGroup": { "description": "An Event Group resource.", "required": [ "eventGroupName" ], "type": "object", "properties": { "eventGroupId": { "format": "int32", "description": "Identifier used to locate the event group.", "type": "integer", "readOnly": true }, "eventGroupName": { "description": "Name of the event group.", "type": "string" } } }, "Collection[EventGroup]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/EventGroup" } } } }, "Resource[EventGroup]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/EventGroup", "description": "Return data." } } }, "Folder": { "description": "A Folder resource.", "required": [ "folderName" ], "type": "object", "properties": { "folderId": { "format": "int32", "description": "Identifier used to locate the folder.", "type": "integer", "readOnly": true }, "folderName": { "description": "Name of the folder.", "type": "string" } } }, "Collection[Folder]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/Folder" } } } }, "Resource[Folder]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/Folder", "description": "Return data." } } }, "Collection[IpPool]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/IpPool" } } } }, "IpPool": { "description": "An IpPool resource.", "type": "object", "properties": { "ipPoolId": { "format": "int32", "description": "Identifier used to locate the IP pool.", "type": "integer" }, "ipPoolDescription": { "description": "Description of the IP pool.", "type": "string" } } }, "List": { "description": "A List resource.", "required": [ "listName", "bounceHandling", "bounceUnsubscribeCount" ], "type": "object", "properties": { "listId": { "format": "int32", "description": "Identifier used to locate the list.", "type": "integer", "readOnly": true }, "listName": { "description": "Name of the list.", "type": "string" }, "folderId": { "format": "int32", "description": "Identifier of the folder associated with the list.", "type": "integer" }, "ipPoolId": { "format": "int32", "description": "Identifier of the IP pool associated with the list.", "type": "integer" }, "bounceDomainAlias": { "description": "Alias domain for email bounces.", "type": "string" }, "bounceHandling": { "description": "Bounce handling method for the list. Allowed values are `None`, `Standard`, and `Aggressive`.", "type": "string" }, "bounceUnsubscribeCount": { "format": "int32", "description": "The number of bounces that are allowed before being automatically unsubscribed.", "type": "integer" }, "createDate": { "format": "date-time", "description": "The creation date of the list.", "type": "string" }, "enableBrowserLink": { "description": "Whether browser link is enabled.", "type": "boolean" }, "enableDoubleOptIn": { "description": "Whether double opt-in is enabled.", "type": "boolean" }, "enableDynamicContent": { "description": "Whether dynamic content is enabled.", "type": "boolean" }, "enableGoogleAnalytics": { "description": "Whether Google Analytics is enabled.", "type": "boolean" }, "enableInternationalization": { "description": "Whether internationalization is enabled.", "type": "boolean" }, "enableListHygiene": { "description": "Whether list hygiene is enabled.", "type": "boolean" }, "enableListRemovalHeader": { "description": "Whether unsubscribe information is automatically included in message headers.", "type": "boolean" }, "enableListRemovalLink": { "description": "Whether the list removal link is automatically included.", "type": "boolean" }, "enableListrakAnalytics": { "description": "Whether Listrak Analytics is enabled.", "type": "boolean" }, "enableSpamScorePersonalization": { "description": "Whether personalization is available in Spam Score.", "type": "boolean" }, "enableToNamePersonalization": { "description": "Whether personalization is enabled for a recipient's _To_ name.", "type": "boolean" }, "enableUniversalEmailKeySetting": { "description": "Whether to include UniversalEmailKey in URL query string.", "type": "boolean" }, "fromEmail": { "description": "The _From_ email address used by default when sending messages.", "type": "string" }, "fromName": { "description": "The _From_ name used by default when sending messages.", "type": "string" }, "googleTrackingDomains": { "description": "Google tracking domains of the list.", "type": "array", "items": { "type": "string" } }, "linkDomainAlias": { "description": "Alias domain for links in the list's messages.", "type": "string" }, "mediaDomainAlias": { "description": "DEPRECATED as of January 2020", "type": "string" } } }, "Collection[List]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/List" } } } }, "Resource[List]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/List", "description": "Return data." } } }, "ImportFile": { "description": "An Import File resource.", "required": [ "fileDelimiter", "fileMappings", "fileName", "fileStream", "importType", "segmentationImportType" ], "type": "object", "properties": { "fileDelimiter": { "description": "Delimiter used to separate columns within the file.", "type": "string" }, "fileMappings": { "description": "Representation of import file mappings; these map file columns to import fields.", "type": "array", "items": { "$ref": "#/definitions/ImportFileMapping" } }, "fileName": { "description": "Filename of the import file.", "type": "string" }, "fileStream": { "format": "byte", "description": "Base64-encoded byte array representation of the import file.", "type": "string" }, "hasColumnNames": { "description": "Whether the first line of the import file contains column names.", "type": "boolean" }, "importType": { "description": "The type of import to conduct. Allowed values are `AddSubscribers`, `AddSubscribersAndSegmentationData`, `RemoveSubscribers`, and `UpdateSubscribers`.", "type": "string" }, "segmentationImportType": { "description": "Strategy to take if imported data already exists. Allowed values are `Update`, `Append`, and `Overwrite`.", "type": "string" }, "suppressEmailNotifications": { "description": "Whether to suppress email notifications.", "type": "boolean" }, "textQualifier": { "description": "The text qualifier used for the import file.", "type": "string" }, "triggerJourney": { "description": "Whether to enter subscribers into all List Subscription journeys associated with this list.", "type": "boolean" }, "includeUnsubscribed": { "description": "Whether to update both subscribed and unsubscribed contacts when `ImportType` is `UpdateSubscribers`.", "type": "boolean" } } }, "ImportFileMapping": { "description": "An Import File Mapping resource.", "required": [ "fileColumn", "fileColumnType" ], "type": "object", "properties": { "segmentationFieldId": { "format": "int32", "description": "Identifier of the associated profile field.", "type": "integer" }, "defaultValue": { "description": "Default value to be used if a value is not provided during the import.", "type": "string" }, "fileColumn": { "format": "int32", "description": "Number identifying the column's ordinal position in the file, starting from `0`.", "type": "integer" }, "fileColumnType": { "description": "Type of value in the column of the import file. Allowed values are `Email`, `SegmentationField`, `Event`, and `ExternalContactID`.", "type": "string" } } }, "Collection[ListImport]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/ListImport" } } } }, "ListImport": { "description": "A List Import resource.", "type": "object", "properties": { "importFileId": { "format": "int32", "description": "Identifier used to locate the list import.", "type": "integer", "readOnly": true }, "importFileName": { "description": "Filename of an import file.", "type": "string" }, "importDate": { "format": "date-time", "description": "Date of an import.", "type": "string" } } }, "Resource[ListImport]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/ListImport", "description": "Return data." } } }, "CollectionPaged[ListImportContact]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "nextPageCursor": { "description": "URI of the next page of data.", "type": "string" }, "data": { "description": "Collection of data that exists on this paged view.", "type": "array", "items": { "$ref": "#/definitions/ListImportContact" } } } }, "ListImportContact": { "description": "A List Import Contact resource.", "type": "object", "properties": { "emailAddress": { "description": "Email address of the contact.", "type": "string" }, "importResult": { "description": "Result of the list import for the contact.", "type": "string" } } }, "Resource[ListImportStatus]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/ListImportStatus", "description": "Return data." } } }, "ListImportStatus": { "description": "A List Import Status resource.", "type": "object", "properties": { "startDate": { "format": "date-time", "description": "Start date of the list import.", "type": "string" }, "endDate": { "format": "date-time", "description": "End date of the list import.", "type": "string" }, "status": { "description": "The status of the list import.", "type": "string" } } }, "Resource[ListImportSummary]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/ListImportSummary", "description": "Return data." } } }, "ListImportSummary": { "description": "A List Import Summary resource.", "type": "object", "properties": { "alreadySubscribedCount": { "format": "int32", "description": "Number of contacts that are already subscribed to the list.", "type": "integer" }, "alreadyUnsubscribedCount": { "format": "int32", "description": "Number of contacts that have already been unsubscribed from the list. Only applies when removing subscribers.", "type": "integer" }, "bannedCount": { "format": "int32", "description": "Number of contacts that have been banned from the list.", "type": "integer" }, "invalidEmailCount": { "format": "int32", "description": "Number of contacts that have an invalid email address.", "type": "integer" }, "previouslyUnsubscribedCount": { "format": "int32", "description": "Number of contacts that have already been unsubscribed from the list. Only applies when updating and appending subscribers.", "type": "integer" }, "processedCount": { "format": "int32", "description": "Number of contacts that were processed in total.", "type": "integer" }, "skippedCount": { "format": "int32", "description": "Number of contacts that were skipped.", "type": "integer" }, "subscribedCount": { "format": "int32", "description": "Number of contacts that were subscribed to the list.", "type": "integer" }, "suppressedCount": { "format": "int32", "description": "Number of contacts that are on a suppression list bound to the list.", "type": "integer" }, "unsubscribedCount": { "format": "int32", "description": "Number of contacts that were unsubscribed from the list.", "type": "integer" } } }, "MessageExtendedFilter": { "required": [ "externalCampaignId", "fromEmail", "fromName", "subject" ], "type": "object", "properties": { "messageId": { "format": "int32", "description": "Identifier used to locate the message.", "type": "integer", "readOnly": true }, "sendDate": { "format": "date-time", "description": "Send date of the message.", "type": "string", "readOnly": true }, "messageStatus": { "description": "Status displaying whether the message is sent or scheduled.", "type": "string", "readOnly": true }, "enableUniversalEmailKeySetting": { "description": "Whether to include UniversalEmailKey in URL query string.", "type": "boolean" }, "campaignId": { "format": "int32", "description": "Identifier of the campaign associated with the message.", "type": "integer" }, "bodyHtml": { "description": "HTML body that will be sent in the message.", "type": "string" }, "bodyText": { "description": "Text body that will be sent in the message.", "type": "string" }, "codePage": { "format": "int32", "description": "Type of CodePage used in the message.", "type": "integer" }, "enablePassalong": { "description": "Whether passalong is enabled.", "type": "boolean" }, "enableTracking": { "description": "Whether tracking is enabled.", "type": "boolean" }, "externalCampaignId": { "description": "Customer-provided identifier of the campaign associated with the message.", "type": "string" }, "fromEmail": { "description": "The _from email address_ that will be used for the message.", "type": "string" }, "fromName": { "description": "The _from name_ that will be used for the message.", "type": "string" }, "googleAnalyticsCampaignName": { "description": "The Google Analytics campaign name to be used for message tracking.", "type": "string" }, "googleAnalyticsCampaignContent": { "description": "The Google Analytics campaign content to be used for message tracking.", "type": "string" }, "replyEmail": { "description": "The _reply email address_ that will be used for the message.", "type": "string" }, "savedAudienceId": { "format": "int32", "description": "Identifier of the SavedAudience to use for recipient filtering.", "type": "integer" }, "subject": { "description": "Subject of the message.", "type": "string" }, "toName": { "description": "The _to name_ that will be used for the message.", "type": "string" }, "filter": { "$ref": "#/definitions/Filter", "description": "Filter to be used for recipient filtering." } } }, "Filter": { "type": "object", "properties": { "segmentationFieldGroup": { "description": "The name of the profile field group to use for filtering.", "type": "string" }, "segmentationField": { "description": "The name of the profile field to use for filtering.", "type": "string" }, "joinType": { "description": "The mechanism by which this filter should be joined to the immediately preceding filter. Optional if it is the first filter (ignored if provided anyway).", "enum": [ "And", "AndNot", "Or", "OrNot" ], "type": "string" }, "compareType": { "description": "The type of comparison to use filtering values with.", "enum": [ "Contains", "NotContains", "Equals", "NotEquals", "GreaterThan", "GreaterThanOrEqualTo", "LessThan", "LessThanOrEqualTo", "Between", "NotBetween", "Checked", "NotChecked", "RadioOn", "RadioOff", "InCommaList", "NotInCommaList", "IsEmpty", "IsNotEmpty" ], "type": "string" }, "values": { "description": "Values to be used for filtering.", "type": "array", "items": { "$ref": "#/definitions/FilterValue" } }, "filters": { "description": "One or more sub-filters to apply. Cannot be specified in conjunction with the `CompareType` or `Values` fields: filters must define their own filtering behavior, or must define inner filters.", "type": "array", "items": { "$ref": "#/definitions/Filter" } } } }, "FilterValue": { "type": "object", "properties": { "value": { "description": "Value to be used for filtering.", "type": "string" } } }, "Collection[MessageExtended]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/MessageExtended" } } } }, "Resource[MessageExtendedSegmentsApplied]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/MessageExtendedSegmentsApplied", "description": "Return data." } } }, "MessageExtendedSegmentsApplied": { "required": [ "externalCampaignId", "fromEmail", "fromName", "subject" ], "type": "object", "properties": { "messageId": { "format": "int32", "description": "Identifier used to locate the message.", "type": "integer", "readOnly": true }, "sendDate": { "format": "date-time", "description": "Send date of the message.", "type": "string", "readOnly": true }, "messageStatus": { "description": "Status displaying whether the message is sent or scheduled.", "type": "string", "readOnly": true }, "enableUniversalEmailKeySetting": { "description": "Whether to include UniversalEmailKey in URL query string.", "type": "boolean" }, "campaignId": { "format": "int32", "description": "Identifier of the campaign associated with the message.", "type": "integer" }, "bodyHtml": { "description": "HTML body that will be sent in the message.", "type": "string" }, "bodyText": { "description": "Text body that will be sent in the message.", "type": "string" }, "codePage": { "format": "int32", "description": "Type of CodePage used in the message.", "type": "integer" }, "enablePassalong": { "description": "Whether passalong is enabled.", "type": "boolean" }, "enableTracking": { "description": "Whether tracking is enabled.", "type": "boolean" }, "externalCampaignId": { "description": "Customer-provided identifier of the campaign associated with the message.", "type": "string" }, "fromEmail": { "description": "The _from email address_ that will be used for the message.", "type": "string" }, "fromName": { "description": "The _from name_ that will be used for the message.", "type": "string" }, "googleAnalyticsCampaignName": { "description": "The Google Analytics campaign name to be used for message tracking.", "type": "string" }, "googleAnalyticsCampaignContent": { "description": "The Google Analytics campaign content to be used for message tracking.", "type": "string" }, "replyEmail": { "description": "The _reply email address_ that will be used for the message.", "type": "string" }, "savedAudienceId": { "format": "int32", "description": "Identifier of the SavedAudience to use for recipient filtering.", "type": "integer" }, "segmentsApplied": { "$ref": "#/definitions/SegmentsApplied", "description": "Segments applied to the message." }, "subject": { "description": "Subject of the message.", "type": "string" }, "toName": { "description": "The _to name_ that will be used for the message.", "type": "string" } } }, "SegmentsApplied": { "description": "Segments applied to the message.", "type": "object", "properties": { "includedSegments": { "description": "List of segments included in the recipient audience.", "type": "array", "items": { "type": "string" } }, "excludedSegments": { "description": "List of segments excluded from the recipient audience.", "type": "array", "items": { "type": "string" } } } }, "Resource[MessageStatus]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/MessageStatus", "description": "Return data." } } }, "MessageStatus": { "description": "A Message Status resource.", "type": "object", "properties": { "sendCount": { "format": "int32", "description": "Number of sends associated with the message.", "type": "integer" }, "startDate": { "format": "date-time", "description": "Start date of the message send.", "type": "string" }, "endDate": { "format": "date-time", "description": "End date of the message send.", "type": "string" }, "status": { "description": "The status of the message send.", "type": "string" }, "type": { "description": "The type of message send.", "type": "string" } } }, "Collection[SavedAudience]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/SavedAudience" } } } }, "SavedAudience": { "description": "A Saved Audience resource.", "type": "object", "properties": { "name": { "description": "Name of the saved audience.", "type": "string" }, "lastModified": { "format": "date-time", "description": "Last date the saved audience was modified.", "type": "string" }, "savedAudienceId": { "format": "int64", "description": "Identifier used to locate the saved audience.", "type": "integer" } } }, "CollectionPaged[SavedAudience]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "nextPageCursor": { "description": "URI of the next page of data.", "type": "string" }, "data": { "description": "Collection of data that exists on this paged view.", "type": "array", "items": { "$ref": "#/definitions/SavedAudience" } } } }, "SavedMessageCreate": { "description": "Request model for creating a Saved Message.", "required": [ "savedMessageName", "subject", "fromName", "fromEmail" ], "type": "object", "properties": { "savedMessageName": { "description": "Name given to the saved message.", "type": "string" }, "subject": { "description": "Subject of the message.", "type": "string" }, "preheader": { "description": "Pre-header text of the message.", "type": "string" }, "fromName": { "description": "The from name that will be used for the message.", "type": "string" }, "fromEmail": { "description": "The from email address that will be used for the message.", "type": "string" }, "replyEmail": { "description": "The reply email address that will be used for the message.", "type": "string" }, "bodyHtml": { "description": "HTML body of the message.", "type": "string" }, "bodyText": { "description": "Plain text body of the message.", "type": "string" }, "campaignId": { "format": "int32", "description": "Identifier of the campaign associated with the message.", "type": "integer" }, "externalCampaignId": { "description": "Customer-provided identifier of the campaign associated with the message.", "type": "string" } } }, "Collection[SavedMessage]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/SavedMessage" } } } }, "SavedMessage": { "description": "A Saved Message resource.", "required": [ "externalCampaignId", "subject" ], "type": "object", "properties": { "savedMessageId": { "format": "int32", "description": "Identifier used to locate the saved message.", "type": "integer", "readOnly": true }, "savedMessageName": { "description": "Name given to the saved message.", "type": "string" }, "campaignId": { "format": "int32", "description": "Identifier of the campaign associated with the message.", "type": "integer" }, "createDate": { "format": "date-time", "description": "Creation date of the saved message.", "type": "string" }, "lastModifiedDate": { "format": "date-time", "description": "Last date the saved message was modified.", "type": "string" }, "externalCampaignId": { "description": "Customer-provided identifier of the campaign associated with the message.", "type": "string" }, "subject": { "description": "Subject of the message.", "type": "string" } } }, "Resource[SavedMessageExtended]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/SavedMessageExtended", "description": "Return data." } } }, "SavedMessageExtended": { "description": "A Saved Message resource.", "required": [ "externalCampaignId", "fromEmail", "fromName", "subject" ], "type": "object", "properties": { "enableUniversalEmailKeySetting": { "description": "Whether to include UniversalEmailKey in URL query string.", "type": "boolean" }, "savedMessageId": { "format": "int32", "description": "Identifier used to locate the saved message.", "type": "integer" }, "savedMessageName": { "description": "Name given to the saved message.", "type": "string" }, "campaignId": { "format": "int32", "description": "Identifier of the campaign associated with the message.", "type": "integer" }, "bodyHtml": { "description": "HTML body that will be sent in the message.", "type": "string" }, "bodyText": { "description": "Text body that will be sent in the message.", "type": "string" }, "codePage": { "format": "int32", "description": "Type of CodePage used in the message.", "type": "integer" }, "createDate": { "format": "date-time", "description": "Creation date of the saved message.", "type": "string" }, "lastModifiedDate": { "format": "date-time", "description": "Last date the saved message was modified.", "type": "string" }, "enablePassalong": { "description": "Whether passalong is enabled.", "type": "boolean" }, "enableTracking": { "description": "Whether tracking is enabled.", "type": "boolean" }, "externalCampaignId": { "description": "Customer-provided identifier of the campaign associated with the message.", "type": "string" }, "fromEmail": { "description": "The _from email address_ that will be used for the message.", "type": "string" }, "fromName": { "description": "The _from name_ that will be used for the message.", "type": "string" }, "googleAnalyticsCampaignName": { "description": "The Google Analytics campaign name to be used for message tracking.", "type": "string" }, "googleAnalyticsCampaignContent": { "description": "The Google Analytics campaign content to be used for message tracking.", "type": "string" }, "replyEmail": { "description": "The _reply email address_ that will be used for the message.", "type": "string" }, "subject": { "description": "Subject of the message.", "type": "string" }, "toName": { "description": "The _to name_ that will be used for the message.", "type": "string" } } }, "SavedMessageUpdate": { "description": "Request model for updating a Saved Message.", "required": [ "savedMessageName", "subject", "fromName", "fromEmail" ], "type": "object", "properties": { "savedMessageName": { "description": "Name given to the saved message.", "type": "string" }, "subject": { "description": "Subject of the message.", "type": "string" }, "preheader": { "description": "Pre-header text of the message.", "type": "string" }, "fromName": { "description": "The from name that will be used for the message.", "type": "string" }, "fromEmail": { "description": "The from email address that will be used for the message.", "type": "string" }, "replyEmail": { "description": "The reply email address that will be used for the message.", "type": "string" }, "bodyHtml": { "description": "HTML body of the message.", "type": "string" }, "bodyText": { "description": "Plain text body of the message.", "type": "string" }, "campaignId": { "format": "int32", "description": "Identifier of the campaign associated with the message.", "type": "integer" }, "externalCampaignId": { "description": "Customer-provided identifier of the campaign associated with the message.", "type": "string" } } }, "SegmentationField": { "description": "A Profile Field resource.", "required": [ "segmentationFieldName", "dataType", "maxLength", "position" ], "type": "object", "properties": { "segmentationFieldId": { "format": "int32", "description": "Identifier of the profile field.", "type": "integer", "readOnly": true }, "segmentationFieldName": { "description": "Name of the profile field.", "type": "string" }, "segmentationFieldGroupId": { "format": "int32", "description": "Identifier of the profile field group associated with the profile field.", "type": "integer", "readOnly": true }, "dataType": { "description": "Data type of the profile field. Allowed values are `Text`, `Numeric`, `RadioButton`, `CheckBox`, `CommentArea`, `Date`, and `ContentBlock`.", "type": "string" }, "maxLength": { "format": "int32", "description": "The maximum character count of the data that can be stored in the profile field.", "type": "integer" }, "position": { "format": "int32", "description": "The ordinal position of the profile field.", "type": "integer" } } }, "Collection[SegmentationField]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/SegmentationField" } } } }, "Resource[SegmentationField]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/SegmentationField", "description": "Return data." } } }, "SegmentationFieldGroup": { "description": "A Profile Field Group resource.", "required": [ "segmentationFieldGroupName", "position" ], "type": "object", "properties": { "segmentationFieldGroupId": { "format": "int32", "description": "Identifier of the profile field group.", "type": "integer", "readOnly": true }, "segmentationFieldGroupName": { "description": "Name of the profile field group.", "type": "string" }, "position": { "format": "int32", "description": "Ordinal position of the profile field group.", "type": "integer" } } }, "Collection[SegmentationFieldGroup]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/SegmentationFieldGroup" } } } }, "Resource[SegmentationFieldGroup]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/SegmentationFieldGroup", "description": "Return data." } } }, "CollectionPaged[SplitTest]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "nextPageCursor": { "description": "URI of the next page of data.", "type": "string" }, "data": { "description": "Collection of data that exists on this paged view.", "type": "array", "items": { "$ref": "#/definitions/SplitTest" } } } }, "SplitTest": { "description": "A Split Test resource.", "type": "object", "properties": { "splitTestId": { "format": "int32", "description": "Identifier used to locate the split test.", "type": "integer" }, "splitTestName": { "description": "Name of the split test.", "type": "string" }, "startDate": { "format": "date-time", "description": "Start date of the split test.", "type": "string" }, "endDate": { "format": "date-time", "description": "End date of the split test.", "type": "string" }, "status": { "description": "Status of the split test.", "type": "string" }, "testCriteria": { "description": "Criteria that is being tested by the split test.", "type": "string" }, "testType": { "description": "Determines if the winning message is sent to a remainder group or not.", "type": "string" }, "winnerMetric": { "description": "Metric that is being used to evaluate a winner of the split test.", "type": "string" } } }, "Resource[SplitTest]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/SplitTest", "description": "Return data." } } }, "Collection[SplitTestMessage]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/SplitTestMessage" } } } }, "SplitTestMessage": { "description": "A Split Test Message resource.", "type": "object", "properties": { "messageId": { "format": "int32", "description": "Identifier used to locate the message.", "type": "integer" }, "messageStatus": { "description": "Status displaying whether the message is scheduled, sending, sent, or not ready.", "type": "string" }, "messageType": { "description": "Type displaying whether the message is a split test group message or a remainder message.", "type": "string" }, "groupName": { "description": "The name of the split test group to which the message belongs.", "type": "string" }, "segmentSize": { "format": "int32", "description": "The percentage of recipients the message will be sent to. Will be null for remainder messages.", "type": "integer" } } }, "TransactionalMessageContact": { "description": "A Transactional Message Contact resource.", "required": [ "emailAddress" ], "type": "object", "properties": { "emailAddress": { "description": "Email address of the contact.", "type": "string" }, "segmentationFieldValues": { "description": "Profile field values associated with the contact. An empty set must be provided if there are none.", "type": "array", "items": { "$ref": "#/definitions/SegmentationFieldValue" } } } }, "Collection[TransactionalMessage]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "description": "Collection of return data from the given call.", "type": "array", "items": { "$ref": "#/definitions/TransactionalMessage" } } } }, "TransactionalMessage": { "description": "A Transactional Message resource.", "required": [ "externalCampaignId", "subject" ], "type": "object", "properties": { "transactionalMessageId": { "format": "int32", "description": "Identifier used to locate the transactional message.", "type": "integer" }, "transactionalMessageName": { "description": "Name given to the transactional message.", "type": "string" }, "campaignId": { "format": "int32", "description": "Identifier of the campaign associated with the message.", "type": "integer" }, "externalCampaignId": { "description": "Customer-provided identifier of the campaign associated with the message.", "type": "string" }, "subject": { "description": "Subject of the message.", "type": "string" } } }, "Resource[TransactionalMessage]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "data": { "$ref": "#/definitions/TransactionalMessage", "description": "Return data." } } }, "CollectionPaged[TransactionalMessageActivity]": { "type": "object", "properties": { "status": { "format": "int32", "description": "HTTP status code.", "type": "integer" }, "nextPageCursor": { "description": "URI of the next page of data.", "type": "string" }, "data": { "description": "Collection of data that exists on this paged view.", "type": "array", "items": { "$ref": "#/definitions/TransactionalMessageActivity" } } } }, "TransactionalMessageActivity": { "description": "A Message Activity resource.", "type": "object", "properties": { "abuse": { "description": "Whether the message was marked as abuse by the contact.", "type": "boolean" }, "activityDate": { "format": "date-time", "description": "Date of first activity by the contact.", "type": "string" }, "bounce": { "description": "Whether the message bounced for the contact.", "type": "boolean" }, "bounceReason": { "description": "Reason why the message bounced.", "type": "string" }, "click": { "description": "Whether the message was clicked by the contact.", "type": "boolean" }, "clickCount": { "format": "int32", "description": "Number of clicks made by the contact.", "type": "integer" }, "emailAddress": { "description": "Email address of the contact.", "type": "string" }, "open": { "description": "Whether the message was opened by the contact.", "type": "boolean" }, "orderTotal": { "format": "double", "description": "Order total associated with the message for the contact.", "type": "number" }, "read": { "description": "Whether the message was read by the contact.", "type": "boolean" }, "sendDate": { "format": "date-time", "description": "Send date of the message.", "type": "string" }, "unsubscribe": { "description": "Whether the message caused an unsubscribe by the contact.", "type": "boolean" }, "visitDate": { "format": "date-time", "description": "DEPRECATED as of June 2020", "type": "string" }, "externalContactID": { "description": "The external contact ID provided by a 3rd party", "type": "string" }, "resendKey": { "description": "Key used to resend messages", "type": "string" } } } } }