push_failed
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"push"
],
"type": "string",
"description": "The event relates to an push notification."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"failed"
],
"type": "string",
"description": "A push notification couldn't be sent to the delivery provider."
}
}
}
],
"title": "failed"
}
push_opened
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"push"
],
"type": "string",
"description": "The event relates to an push notification."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
"metric": {
"enum": [
"opened"
],
"type": "string",
"description": "A device opened a push notification."
}
}
}
],
"title": "opened"
}
push_sent
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"push"
],
"type": "string",
"description": "The event relates to an push notification."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipients"
],
"properties": {
"content": {
"type": "string",
"description": "The stringified payload for your push notification. This key only appears if you enabled the *Body Content* option when setting up your webhook."
},
"recipients": {
"type": "array",
"items": {
"type": "object",
"required": [
"device_id"
],
"properties": {
"device_id": {
"type": "string",
"description": "The device identifier/token."
}
},
"description": "Describes the device the push was sent to."
}
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"sent"
],
"type": "string",
"description": "A push notification was sent to a recipient. If you enabled the *Body Content* option with your webhook, the payload includes the `content` of your message."
}
}
}
],
"title": "sent"
}
push_undeliverable
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"push"
],
"type": "string",
"description": "The event relates to an push notification."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"undeliverable"
],
"type": "string",
"description": "A message was undeliverable. Undeliverable messages are messages that have either hit a message limit, come from a newsletter that was cancelled or deleted, or an environment that has delivery disabled (which is something you might do if you’re testing an integration). If you’re not using message limits, you probably won’t see this event."
}
}
}
],
"title": "failed"
}
queue_draft
{
"type": "boolean",
"default": false,
"description": "If true, your transactional message is held as a draft in Customer.io and not sent directly to your audience. You must go to the Deliveries and Drafts page to send your message."
}
recipient
{
"type": "string",
"example": "{{customer.email}}",
"description": "The recipient address for an action."
}
recipient_not_templated
{
"type": "string",
"example": "test@example.com",
"description": "The recipient address for an action."
}
relationship_attributes
{
"type": "object",
"example": {
"role": "admin"
},
"description": "[Coming January 2024](https://customer.io/docs/api/app/) - If we have not rolled out relationship attributes to your account yet and you send them with your request, your request will go through but we won't store your relationship attributes. The attributes associated with a relationship. Passing null or an empty string removes the attribute from the relationship.\n",
"additionalProperties": {
"x-additionalPropertiesName": "Relationship Attributes"
}
}
reply_to
{
"type": "string",
"example": "replyto@example.com",
"readOnly": true,
"description": "The address that receives replies for the message, if applicable."
}
reply_to_id
{
"type": "integer",
"example": 38,
"nullable": true,
"description": "The identifier for the `reply_to` address, if applicable. You can [list your sender identities](https://customer.io/docs/api/app/) to match the ID to a specific address."
}
reply_to_settable
{
"type": "string",
"example": "replyto@example.com",
"description": "The address that receives replies for the message, if applicable."
}
reportingWebhook
{
"type": "object",
"required": [
"name",
"endpoint",
"events"
],
"properties": {
"id": {
"type": "integer",
"example": 4,
"readOnly": true,
"description": "The identifier for the webhook."
},
"name": {
"type": "string",
"example": "my cool webhook",
"description": "The name of your webhook."
},
"events": {
"type": "array",
"items": {
"enum": [
"customer_subscribed",
"customer_unsubscribed",
"cio_subscription_preferences_changed",
"email_drafted",
"email_attempted",
"email_sent",
"email_delivered",
"email_opened",
"email_clicked",
"email_converted",
"email_bounced",
"email_dropped",
"email_deferred",
"email_spammed",
"email_failed",
"email_unsubscribed",
"email_undeliverable",
"push_drafted",
"push_attempted",
"push_sent",
"push_delivered",
"push_opened",
"push_clicked",
"push_converted",
"push_bounced",
"push_dropped",
"push_failed",
"push_undeliverable",
"slack_drafted",
"slack_attempted",
"slack_sent",
"slack_clicked",
"slack_converted",
"slack_failed",
"sms_drafted",
"sms_attempted",
"sms_sent",
"sms_delivered",
"sms_clicked",
"sms_converted",
"sms_bounced",
"sms_failed",
"sms_undeliverable",
"webhook_drafted",
"webhook_attempted",
"webhook_sent",
"webhook_clicked",
"webhook_converted",
"webhook_failed",
"webhook_undeliverable"
],
"type": "string"
},
"example": [
"email_failed",
"webhook_failed"
],
"minItems": 1,
"description": "Specifies the types of events you want to report to your webhook. See our [reporting webhooks reference](https://customer.io/docs/api/app/) for more information about event types and the information they return."
},
"disabled": {
"type": "boolean",
"example": false,
"description": "Set to `true` to quit sending events to the webhook URL. Set to `false` to enable the webhook."
},
"endpoint": {
"type": "string",
"format": "url",
"example": "http://example.com/webhook",
"description": "The webhook URL."
},
"with_content": {
"type": "boolean",
"example": false,
"description": "Set to `true` to include the message `body` in `_sent` events."
},
"full_resolution": {
"type": "boolean",
"default": false,
"example": true,
"description": "Set to `false` to send unique open and click events to the webhook. Set to `true` to send all events."
}
}
}
reporting_webhook
{
"oneOf": [
{
"oneOf": [
{
"allOf": [
{
"type": "object",
"required": [
"metric"
],
"properties": {
"metric": {
"enum": [
"subscribed"
],
"type": "string",
"description": "The metric recorded by the event. For `customer` events, this is whether the customer explicitly subscribed or unsubscribed."
}
}
},
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp",
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"identifiers",
"customer_id",
"email_address"
],
"properties": {
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"email_address": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
}
},
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"customer"
],
"type": "string",
"example": "customer",
"description": "The event represents a customer subscribing, unsubscribing, or changing their subscription preferences."
}
}
}
],
"title": "subscribed",
"description": "A person subscribed to messages from you—their `unsubscribed` attribute was set to `false`."
},
{
"allOf": [
{
"type": "object",
"required": [
"metric"
],
"properties": {
"metric": {
"enum": [
"unsubscribed"
],
"type": "string",
"description": "The metric recorded by the event. For `customer` events, this is whether the customer explicitly subscribed or unsubscribed."
}
}
},
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp",
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"identifiers",
"customer_id",
"email_address"
],
"properties": {
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"email_address": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
}
},
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"customer"
],
"type": "string",
"example": "customer",
"description": "The event represents a customer subscribing, unsubscribing, or changing their subscription preferences."
}
}
}
],
"title": "unsubscribed",
"description": "A person unsubscribed to messages from you—their `unsubscribed` attribute was set to `true`."
},
{
"type": "object",
"title": "changed subscription preferences",
"required": [
"metric",
"event_id",
"data",
"timestamp"
],
"properties": {
"data": {
"allOf": [
{
"type": "object",
"required": [
"identifiers",
"customer_id",
"email_address",
"content"
],
"properties": {
"content": {
"type": "string",
"example": "{\"topics\":{\"topic_1\":true}}",
"description": "Contains the subscription preferences that a person changed in a stringified object format. The `topic_1` key refers to a topic with an ID of `1`; you can get more information about each topic from our [App API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"email_address": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
}
},
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
}
]
},
"metric": {
"enum": [
"cio_subscription_preferences_changed"
],
"type": "string",
"description": "The event we're reporting to your webhook endpoint. In this case, a person changed their subscription preferences."
},
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"delivery_type": {
"enum": [
"email",
"sms",
"push",
"in_app",
"slack",
"webhook"
],
"type": "string",
"example": "email",
"description": "The type of delivery that resulted in a change to preferences."
}
},
"description": "A person changed their subscription preferences through our subscription center or you changed their `cio_subscription_preferences` attribute values.\n\nSome fields in the `data` object change based on whether the message that resulted in the change originated from a broadcast, campaign, or newsletter.\n"
}
],
"title": "Customer",
"description": "Events that occur when a customer subscribes or unsubscribes from your messages."
},
{
"oneOf": [
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"email"
],
"type": "string",
"description": "The event relates to an email action."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"subject"
],
"properties": {
"subject": {
"type": "string",
"description": "The subject of the email."
},
"recipient": {
"type": "string",
"example": "test@example.com",
"description": "The recipient address for an action."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"drafted"
],
"type": "string",
"description": "The metric recorded by the event. For `customer` events, this is whether the customer explicitly subscribed or unsubscribed."
}
}
}
],
"title": "drafted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"email"
],
"type": "string",
"description": "The event relates to an email action."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"attempted"
],
"type": "string",
"description": "An email could not be sent to the delivery provider and will be retried. The `failure_message` provides the reason for the failure."
}
}
}
],
"title": "attempted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"email"
],
"type": "string",
"description": "The event relates to an email action."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"subject"
],
"properties": {
"content": {
"type": "string",
"description": "The body content of your email. This key only appears if you enabled the *Body Content* option when setting up your webhook."
},
"subject": {
"type": "string",
"description": "The subject of the email."
},
"recipient": {
"type": "string",
"example": "test@example.com",
"description": "The recipient address for an action."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"sent"
],
"type": "string",
"description": "A message was successfully sent. If you enabled the *Body Content* option with your webhook, the payload includes the `content` of your message."
}
}
}
],
"title": "sent"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"email"
],
"type": "string",
"description": "The event relates to an email action."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"subject"
],
"properties": {
"subject": {
"type": "string",
"description": "The subject of the email."
},
"recipient": {
"type": "string",
"example": "test@example.com",
"description": "The recipient address for an action."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"delivered"
],
"type": "string",
"description": "A message was successfully delivered to a recipient."
}
}
}
],
"title": "delivered"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"email"
],
"type": "string",
"description": "The event relates to an email action."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"subject"
],
"properties": {
"subject": {
"type": "string",
"description": "The subject of the email."
},
"recipient": {
"type": "string",
"example": "test@example.com",
"description": "The recipient address for an action."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"opened"
],
"type": "string",
"description": "The recipient opened a message."
}
}
}
],
"title": "opened"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"email"
],
"type": "string",
"description": "The event relates to an email action."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"subject",
"href",
"link_id"
],
"properties": {
"href": {
"type": "string",
"example": "https://www.customer.io/docs",
"description": "The URL of the link that a person clicked."
},
"link_id": {
"type": "integer",
"example": 1,
"description": "The identifier for the tracked link that a person clicked or tapped."
},
"subject": {
"type": "string",
"description": "The subject of the email."
},
"recipient": {
"type": "string",
"example": "test@example.com",
"description": "The recipient address for an action."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"clicked"
],
"type": "string",
"description": "The recipient clicked a tracked link in the email."
}
}
}
],
"title": "clicked"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"email"
],
"type": "string",
"description": "The event relates to an email action."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"subject"
],
"properties": {
"subject": {
"type": "string",
"description": "The subject of the email."
},
"recipient": {
"type": "string",
"example": "test@example.com",
"description": "The recipient address for an action."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"converted"
],
"type": "string",
"description": "A person matched a conversion goal attributed to an email."
}
}
}
],
"title": "converted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"email"
],
"type": "string",
"description": "The event relates to an email action."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"subject"
],
"properties": {
"subject": {
"type": "string",
"description": "The subject of the email."
},
"recipient": {
"type": "string",
"example": "test@example.com",
"description": "The recipient address for an action."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"unsubscribed"
],
"type": "string",
"description": "The recipient unsubscribed based on a particular message."
}
}
}
],
"title": "unsubscribed"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"email"
],
"type": "string",
"description": "The event relates to an email action."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"subject",
"failure_message"
],
"properties": {
"subject": {
"type": "string",
"description": "The subject of the email."
},
"recipient": {
"type": "string",
"example": "test@example.com",
"description": "The recipient address for an action."
},
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"bounced"
],
"type": "string",
"description": "The delivery provider could not deliver an email."
}
}
}
],
"title": "bounced"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"email"
],
"type": "string",
"description": "The event relates to an email action."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"subject",
"failure_message"
],
"properties": {
"subject": {
"type": "string",
"description": "The subject of the email."
},
"recipient": {
"type": "string",
"example": "test@example.com",
"description": "The recipient address for an action."
},
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"dropped"
],
"type": "string",
"description": "Customer.io did not send an email because it was addressed to a person who was suppressed."
}
}
}
],
"title": "dropped"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"email"
],
"type": "string",
"description": "The event relates to an email action."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"subject"
],
"properties": {
"subject": {
"type": "string",
"description": "The subject of the email."
},
"recipient": {
"type": "string",
"example": "test@example.com",
"description": "The recipient address for an action."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"spammed"
],
"type": "string",
"description": "A recipient marked an email as spam."
}
}
}
],
"title": "spammed"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"email"
],
"type": "string",
"description": "The event relates to an email action."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"subject",
"failure_message"
],
"properties": {
"subject": {
"type": "string",
"description": "The subject of the email."
},
"recipient": {
"type": "string",
"example": "test@example.com",
"description": "The recipient address for an action."
},
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"failed"
],
"type": "string",
"description": "An email couldn't be sent to the delivery provider."
}
}
}
],
"title": "failed"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"email"
],
"type": "string",
"description": "The event relates to an email action."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"subject",
"failure_message"
],
"properties": {
"subject": {
"type": "string",
"description": "The subject of the email."
},
"recipient": {
"type": "string",
"example": "test@example.com",
"description": "The recipient address for an action."
},
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"undeliverable"
],
"type": "string",
"description": "A message was undeliverable. Undeliverable messages are messages that have either hit a message limit, come from a newsletter that was cancelled or deleted, or an environment that has delivery disabled (which is something you might do if you’re testing an integration). If you’re not using message limits, you probably won’t see this event."
}
}
}
],
"title": "failed"
}
],
"title": "Email",
"description": "Events representing an email.",
"discriminator": {
"mapping": {
"sent": "#/components/schemas/email_sent",
"failed": "#/components/schemas/email_failed",
"opened": "#/components/schemas/email_opened",
"bounced": "#/components/schemas/email_bounced",
"clicked": "#/components/schemas/email_clicked",
"drafted": "#/components/schemas/email_drafted",
"dropped": "#/components/schemas/email_dropped",
"spammed": "#/components/schemas/email_spammed",
"attempted": "#/components/schemas/email_attempted",
"converted": "#/components/schemas/email_converted",
"delivered": "#/components/schemas/email_delivered",
"unsubscribed": "#/components/schemas/email_unsubscribed",
"undeliverable": "#/components/schemas/email_undeliverable"
},
"propertyName": "metric"
}
},
{
"oneOf": [
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"push"
],
"type": "string",
"description": "The event relates to an push notification."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
"metric": {
"enum": [
"attempted"
],
"type": "string",
"description": "A push notification was drafted."
}
}
}
],
"title": "drafted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"push"
],
"type": "string",
"description": "The event relates to an push notification."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"attempted"
],
"type": "string",
"description": "A push notification was attempted but unsuccessful. This generally means that we'll try again."
}
}
}
],
"title": "attempted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"push"
],
"type": "string",
"description": "The event relates to an push notification."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipients"
],
"properties": {
"recipients": {
"type": "array",
"items": {
"type": "object",
"required": [
"device_id"
],
"properties": {
"device_id": {
"type": "string",
"description": "The device identifier/token."
}
},
"description": "Describes the device the push was sent to."
}
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"delivered"
],
"type": "string",
"description": "A push notification was delivered to a recipient device."
}
}
}
],
"title": "delivered"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"push"
],
"type": "string",
"description": "The event relates to an push notification."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipients"
],
"properties": {
"content": {
"type": "string",
"description": "The stringified payload for your push notification. This key only appears if you enabled the *Body Content* option when setting up your webhook."
},
"recipients": {
"type": "array",
"items": {
"type": "object",
"required": [
"device_id"
],
"properties": {
"device_id": {
"type": "string",
"description": "The device identifier/token."
}
},
"description": "Describes the device the push was sent to."
}
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"sent"
],
"type": "string",
"description": "A push notification was sent to a recipient. If you enabled the *Body Content* option with your webhook, the payload includes the `content` of your message."
}
}
}
],
"title": "sent"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"push"
],
"type": "string",
"description": "The event relates to an push notification."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
"metric": {
"enum": [
"opened"
],
"type": "string",
"description": "A device opened a push notification."
}
}
}
],
"title": "opened"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"push"
],
"type": "string",
"description": "The event relates to an push notification."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipients",
"href",
"link_id"
],
"properties": {
"href": {
"type": "string",
"example": "https://www.customer.io/docs",
"description": "The URL of the link that a person clicked."
},
"link_id": {
"type": "integer",
"example": 1,
"description": "The identifier for the tracked link that a person clicked or tapped."
},
"recipients": {
"type": "array",
"items": {
"type": "object",
"required": [
"device_id"
],
"properties": {
"device_id": {
"type": "string",
"description": "The device identifier/token."
}
},
"description": "Describes the device of the recipient who tapped the link."
}
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"clicked"
],
"type": "string",
"description": "A recipient tapped a link in a push notification."
}
}
}
],
"title": "clicked"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"push"
],
"type": "string",
"description": "The event relates to an push notification."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipients"
],
"properties": {
"recipients": {
"type": "array",
"items": {
"type": "object",
"required": [
"device_id"
],
"properties": {
"device_id": {
"type": "string",
"description": "The device identifier/token."
}
},
"description": "Describes the device of the recipient who tapped the link."
}
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"converted"
],
"type": "string",
"description": "A person matched a conversion goal attributed to a push notification."
}
}
}
],
"title": "converted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"push"
],
"type": "string",
"description": "The event relates to an push notification."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipients"
],
"properties": {
"recipients": {
"type": "array",
"items": {
"type": "object",
"required": [
"device_id",
"device_platform",
"failure_message"
],
"properties": {
"device_id": {
"type": "string",
"description": "The device identifier/token."
},
"device_platform": {
"enum": [
"android",
"ios"
],
"type": "string",
"example": "ios",
"description": "The device's operating system."
},
"failure_message": {
"type": "string",
"description": "The reason the push failed for this particular recipient."
}
},
"description": "Describes the device of the recipient who tapped the link."
}
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"bounced"
],
"type": "string",
"description": "The delivery provider reported at least one invalid device token."
}
}
}
],
"title": "bounced"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"push"
],
"type": "string",
"description": "The event relates to an push notification."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipients"
],
"properties": {
"recipients": {
"type": "array",
"items": {
"type": "object",
"required": [
"device_id",
"device_platform",
"failure_message"
],
"properties": {
"device_id": {
"type": "string",
"description": "The device identifier/token."
},
"device_platform": {
"enum": [
"android",
"ios"
],
"type": "string",
"example": "ios",
"description": "The device's operating system."
},
"failure_message": {
"type": "string",
"description": "The reason the push failed for this particular recipient."
}
},
"description": "Describes the device of the recipient who tapped the link."
}
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"dropped"
],
"type": "string",
"description": "A push notification wasn't sent because at least one device token previously bounced."
}
}
}
],
"title": "dropped"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"push"
],
"type": "string",
"description": "The event relates to an push notification."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"failed"
],
"type": "string",
"description": "A push notification couldn't be sent to the delivery provider."
}
}
}
],
"title": "failed"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"push"
],
"type": "string",
"description": "The event relates to an push notification."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"undeliverable"
],
"type": "string",
"description": "A message was undeliverable. Undeliverable messages are messages that have either hit a message limit, come from a newsletter that was cancelled or deleted, or an environment that has delivery disabled (which is something you might do if you’re testing an integration). If you’re not using message limits, you probably won’t see this event."
}
}
}
],
"title": "failed"
}
],
"title": "Push",
"description": "Events representing a push notification.",
"discriminator": {
"mapping": {
"sent": "#/components/schemas/push_sent",
"failed": "#/components/schemas/push_failed",
"opened": "#/components/schemas/push_opened",
"bounced": "#/components/schemas/push_bounced",
"clicked": "#/components/schemas/push_clicked",
"drafted": "#/components/schemas/push_drafted",
"dropped": "#/components/schemas/push_dropped",
"attempted": "#/components/schemas/push_attempted",
"converted": "#/components/schemas/push_converted",
"delivered": "#/components/schemas/push_delivered",
"undeliverable": "#/components/schemas/push_undeliverable"
},
"propertyName": "metric"
}
},
{
"oneOf": [
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"in_app"
],
"type": "string",
"description": "The event relates to an in-app message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
"metric": {
"enum": [
"drafted"
],
"type": "string",
"description": "An in-app message draft was created."
}
}
}
],
"title": "drafted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"in_app"
],
"type": "string",
"description": "The event relates to an in-app message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"attempted"
],
"type": "string",
"description": "An in-app message failed to send, but will be retried."
}
}
}
],
"title": "attempted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"in_app"
],
"type": "string",
"description": "The event relates to an in-app message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient"
],
"properties": {
"content": {
"type": "string",
"description": "The body of your message. This key only appears if you enabled the *Body Content* option when setting up your webhook."
},
"recipient": {
"type": "string",
"description": "The ID or email address of the person the message was sent to. This identifier is determined by the settings in your message and the value you use to identify your app's users."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"sent"
],
"type": "string",
"description": "An in-app message was sent from Customer.io. Because in-app messages are only delivered when a person's app is open, there may be a significant delay between when a message is sent and when it's \"opened\". If you enabled the *Body Content* option with your webhook, the payload includes the `content` of your message."
}
}
}
],
"title": "sent"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"in_app"
],
"type": "string",
"description": "The event relates to an in-app message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
"metric": {
"enum": [
"opened"
],
"type": "string",
"description": "A device opened an in-app message. Because messages appear automatically when a person opens your app (to the right page if using page rules), \"opened\" is essentially an \"impression\"—a person saw your message."
}
}
}
],
"title": "opened"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"in_app"
],
"type": "string",
"description": "The event relates to an in-app message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"link_id",
"href"
],
"properties": {
"href": {
"type": "string",
"example": "https://www.customer.io/docs",
"description": "The URL of the link that a person clicked."
},
"link_id": {
"type": "integer",
"example": 1,
"description": "The identifier for the tracked link that a person clicked or tapped."
},
"recipient": {
"type": "string",
"description": "The ID or email address of the person the message was sent to. This identifier is determined by the settings in your message and the value you use to identify your app's users."
},
"tracked_response": {
"type": "string",
"description": "The *Action Name* of the action a person clicked/tapped in the message. [Learn more about tracked responses and action names](https://customer.io/docs/api/app/)."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"clicked"
],
"type": "string",
"description": "The in-app message recipient clicked/tapped a component in a message with **Track Clicks** enabled. The *Track Clicks* setting is enabled by default for in-app messages. The payload includes a `tracked_response` key containing the *Action Name* of the component the person clicked/tapped. [Learn more about tracked responses and action names](https://customer.io/docs/api/app/)."
}
}
}
],
"title": "clicked"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"in_app"
],
"type": "string",
"description": "The event relates to an in-app message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient"
],
"properties": {
"recipient": {
"type": "string",
"description": "The ID or email address of the person the message was sent to. This identifier is determined by the settings in your message and the value you use to identify your app's users."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"converted"
],
"type": "string",
"description": "A person matched a conversion goal attributed to an in-app notification."
}
}
}
],
"title": "converted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"in_app"
],
"type": "string",
"description": "The event relates to an in-app message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"failed"
],
"type": "string",
"description": "An in-app message failed to send."
}
}
}
],
"title": "failed"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"in_app"
],
"type": "string",
"description": "The event relates to an in-app message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"undeliverable"
],
"type": "string",
"description": "A message was undeliverable. Undeliverable messages are messages that have either hit a message limit, come from a newsletter that was cancelled or deleted, or an environment that has delivery disabled (which is something you might do if you’re testing an integration). If you’re not using message limits, you probably won’t see this event."
}
}
}
],
"title": "undeliverable"
}
],
"title": "In-App Messages",
"description": "Events pertaining to in-app messages.",
"discriminator": {
"mapping": {
"sent": "#/components/schemas/in_app_sent",
"failed": "#/components/schemas/in_app_failed",
"opened": "#/components/schemas/in_app_opened",
"clicked": "#/components/schemas/in_app_clicked",
"drafted": "#/components/schemas/in_app_drafted",
"attempted": "#/components/schemas/in_app_attempted",
"converted": "#/components/schemas/in_app_converted",
"undeliverable": "#/components/schemas/in_app_undeliverable"
},
"propertyName": "metric"
}
},
{
"oneOf": [
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
"metric": {
"enum": [
"drafted"
],
"type": "string",
"description": "An SMS notification was drafted."
}
}
}
],
"title": "drafted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"attempted"
],
"type": "string",
"description": "An SMS could not be sent to the delivery provider, but will retry."
}
}
}
],
"title": "attempted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient"
],
"properties": {
"content": {
"type": "string",
"description": "The body of your message. This key only appears if you enabled the *Body Content* option when setting up your webhook."
},
"recipient": {
"type": "string",
"description": "The MSISDN (phone number) of the SMS recipient."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"sent"
],
"type": "string",
"description": "An SMS notification was sent. If you enabled the *Body Content* option with your webhook, the payload includes the `content` of your message."
}
}
}
],
"title": "sent"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient"
],
"properties": {
"recipient": {
"type": "string",
"description": "The MSISDN (phone number) of the SMS recipient."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"delivered"
],
"type": "string",
"description": "An SMS notification was delivered to a recipient."
}
}
}
],
"title": "delivered"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"link_id",
"href"
],
"properties": {
"href": {
"type": "string",
"example": "https://www.customer.io/docs",
"description": "The URL of the link that a person clicked."
},
"link_id": {
"type": "integer",
"example": 1,
"description": "The identifier for the tracked link that a person clicked or tapped."
},
"recipient": {
"type": "string",
"description": "The MSISDN (phone number) of the SMS recipient."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"clicked"
],
"type": "string",
"description": "A recipient tapped a link in an SMS message they received."
}
}
}
],
"title": "clicked"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient"
],
"properties": {
"recipient": {
"type": "string",
"description": "The MSISDN (phone number) of the SMS recipient."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"converted"
],
"type": "string",
"description": "A person matched a conversion goal attributed to an SMS."
}
}
}
],
"title": "converted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"failure_message"
],
"properties": {
"recipient": {
"type": "string",
"description": "The MSISDN (phone number) of the SMS recipient."
},
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"bounced"
],
"type": "string",
"description": "The delivery provider was unable to deliver an SMS message."
}
}
}
],
"title": "bounced"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"failed"
],
"type": "string",
"description": "An SMS couldn't be sent to the delivery provider."
}
}
}
],
"title": "failed"
}
],
"title": "SMS",
"description": "Events pertaining to SMS notifications.",
"discriminator": {
"mapping": {
"sent": "#/components/schemas/sms_sent",
"failed": "#/components/schemas/sms_failed",
"bounced": "#/components/schemas/sms_bounced",
"clicked": "#/components/schemas/sms_clicked",
"drafted": "#/components/schemas/sms_drafted",
"attempted": "#/components/schemas/sms_attempted",
"converted": "#/components/schemas/sms_converted",
"delivered": "#/components/schemas/sms_delivered"
},
"propertyName": "metric"
}
},
{
"oneOf": [
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
"metric": {
"enum": [
"drafted"
],
"type": "string",
"description": "A slack message was drafted."
}
}
}
],
"title": "drafted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"attempted"
],
"type": "string",
"description": "A slack message failed and will be retried."
}
}
}
],
"title": "attempted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient"
],
"properties": {
"content": {
"type": "string",
"description": "The of your slack message. This key only appears if you enabled the *Body Content* option when setting up your webhook."
},
"recipient": {
"type": "string",
"description": "The channel or person that received the message, i.e. `#general`."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"sent"
],
"type": "string",
"description": "A slack message was sent. If you enabled the *Body Content* option with your webhook, the payload includes the `content` of your message."
}
}
}
],
"title": "sent"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"href",
"link_id"
],
"properties": {
"href": {
"type": "string",
"example": "https://www.customer.io/docs",
"description": "The URL of the link that a person clicked."
},
"link_id": {
"type": "integer",
"example": 1,
"description": "The identifier for the tracked link that a person clicked or tapped."
},
"recipient": {
"type": "string",
"description": "The channel or person that received the message, i.e. `#general`."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"clicked"
],
"type": "string",
"description": "A person clicked a tracked link in a Slack message."
}
}
}
],
"title": "clicked"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"failed"
],
"type": "string",
"description": "A slack message failed."
}
}
}
],
"title": "failed"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"undeliverable"
],
"type": "string",
"description": "A message was undeliverable. Undeliverable messages are messages that have either hit a message limit, come from a newsletter that was cancelled or deleted, or an environment that has delivery disabled (which is something you might do if you’re testing an integration). If you’re not using message limits, you probably won’t see this event."
}
}
}
],
"title": "failed"
}
],
"title": "Slack",
"description": "Events pertaining to Slack messages.",
"discriminator": {
"mapping": {
"sent": "#/components/schemas/slack_sent",
"failed": "#/components/schemas/slack_failed",
"clicked": "#/components/schemas/slack_clicked",
"drafted": "#/components/schemas/slack_drafted",
"attempted": "#/components/schemas/slack_attempted",
"undeliverable": "#/components/schemas/slack_undeliverable"
},
"propertyName": "metric"
}
},
{
"oneOf": [
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"webhook"
],
"type": "string",
"description": "The event relates to a webhook."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
"metric": {
"enum": [
"drafted"
],
"type": "string",
"description": "A webhook draft was created."
}
}
}
],
"title": "drafted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"webhook"
],
"type": "string",
"description": "The event relates to a webhook."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"attempted"
],
"type": "string",
"description": "A webhook failed to send, but will be retried."
}
}
}
],
"title": "attempted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"webhook"
],
"type": "string",
"description": "The event relates to a webhook."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient"
],
"properties": {
"content": {
"type": "string",
"description": "The stringified payload sent to your webhook address. This key only appears if you enabled the *Body Content* option when setting up your webhook."
},
"recipient": {
"type": "string",
"description": "The URL the webhook was sent to."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"sent"
],
"type": "string",
"description": "A webhook was sent from Customer.io. If you enabled the *Body Content* option with your webhook, the payload includes the `content` of your webhook."
}
}
}
],
"title": "sent"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"webhook"
],
"type": "string",
"description": "The event relates to a webhook."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"link_id",
"href"
],
"properties": {
"href": {
"type": "string",
"example": "https://www.customer.io/docs",
"description": "The URL of the link that a person clicked."
},
"link_id": {
"type": "integer",
"example": 1,
"description": "The identifier for the tracked link that a person clicked or tapped."
},
"recipient": {
"type": "string",
"description": "The URL the webhook was sent to."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"clicked"
],
"type": "string",
"description": "The webhook recipient opened a tracked link in the webhook payload."
}
}
}
],
"title": "clicked"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"webhook"
],
"type": "string",
"description": "The event relates to a webhook."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"failed"
],
"type": "string",
"description": "A webhook failed to send."
}
}
}
],
"title": "failed"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"webhook"
],
"type": "string",
"description": "The event relates to a webhook."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"undeliverable"
],
"type": "string",
"description": "A webhook/message was undeliverable. Undeliverable messages are messages that have either hit a message limit, come from a newsletter that was cancelled or deleted, or an environment that has delivery disabled (which is something you might do if you’re testing an integration). If you’re not using message limits, you probably won’t see this event."
}
}
}
],
"title": "failed"
}
],
"title": "Webhook",
"description": "Events pertaining to webhooks.",
"discriminator": {
"mapping": {
"sent": "#/components/schemas/webhook_sent",
"failed": "#/components/schemas/webhook_failed",
"clicked": "#/components/schemas/webhook_clicked",
"drafted": "#/components/schemas/webhook_drafted",
"attempted": "#/components/schemas/webhook_attempted",
"undeliverable": "#/components/schemas/webhook_undeliverable"
},
"propertyName": "metric"
}
}
],
"discriminator": {
"propertyName": "object_type"
}
}
request_method
{
"enum": [
"GET",
"POST",
"PUT",
"DELETE",
"PATCH"
],
"type": "string",
"example": "POST",
"description": "The method used in conjunction with a webhook `url`."
}
rows_imported
{
"type": "integer",
"description": "The number of rows we imported from the CSV."
}
rows_to_import
{
"type": "integer",
"description": "The total number of importable rows we found in the CSV."
}
segmentAudienceFilter
{
"type": "object",
"title": "segment",
"properties": {
"id": {
"type": "integer",
"example": 4,
"description": "The ID of the segment you want to return people from."
}
},
"description": "Provide the `id` of a segment containing people you want to search for."
}
segmentResponseObject
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"example": 7,
"description": "The identifier for a segment."
},
"name": {
"type": "string",
"example": "Manual Segment 1",
"description": "The name of the segment."
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"example": null,
"nullable": true,
"description": "The tags assigned to the segment, if any. Tags may help you sort through your segments."
},
"type": {
"enum": [
"dynamic",
"manual"
],
"type": "string",
"example": "manual",
"description": "The type of segment."
},
"state": {
"enum": [
"finished"
],
"type": "string",
"description": "The state of the segment. \n"
},
"progress": {
"type": "integer",
"example": null,
"nullable": true,
"description": "If Customer.io has not finished processing the segment, this indicates the percentage complete. Otherwise, this key is null."
},
"description": {
"type": "string",
"example": "My first manual segment",
"description": "A description for the segment. This can help you understand the purpose of the segment when you encounter it in other requests or in the UI."
},
"deduplicate_id": {
"type": "string",
"example": "15:1492548073",
"readOnly": true,
"description": "An identifier in the format `id:timestamp` where the id is the id of the object you are working with (Campaigns, Deliveries, Exports, Identities, Newsletters, Segments, and Templates), and the timestamp is the last time the object was updated."
}
}
}
segment_description
{
"type": "string",
"example": "My first manual segment",
"description": "A description for the segment. This can help you understand the purpose of the segment when you encounter it in other requests or in the UI."
}
segment_id
{
"type": "integer",
"example": 7,
"description": "The identifier for a segment."
}
segment_name
{
"type": "string",
"example": "Manual Segment 1",
"description": "The name of the segment."
}
send_to_unsubscribed
{
"type": "boolean",
"default": true,
"description": "If false, your message is not sent to unsubscribed recipients. Setting this value overrides the value set in the settings of your `transactional_message_id`."
}
sendemail
{
"oneOf": [
{
"allOf": [
{
"type": "object",
"required": [
"transactional_message_id"
],
"properties": {
"transactional_message_id": {
"oneOf": [
{
"type": "integer",
"title": "ID (integer)",
"example": 44,
"description": "The ID of the transactional message you want to send."
},
{
"type": "string",
"title": "Trigger Name (string)",
"example": "pwdreset",
"description": "The name of trigger for the transactional message you want to send; you set the trigger name in the *Configure Settings* step when setting up your message. This is case insensitive."
}
],
"description": "The transactional message template that you want to use for your message. You can call the template by its numerical ID or by the *Trigger Name* that you assigned the template (case insensitive)."
}
}
},
{
"type": "object",
"properties": {
"body": {
"type": "string",
"description": "The HTML body of your message. This overrides the body of the transactional template (referenced by `transactional_message_id`). If you send an AMP-enabled email (with `body_amp`), and the recipient's email client doesn't support AMP, this is the fallback email."
},
"from": {
"type": "string",
"example": "support@example.com",
"description": "The address that your email is from. This address must be verified by Customer.io. This overrides the from address set within the transactional template (referenced by `transactional_message_id`). You can include a display/friendly name in your from address, but we recommend that you use quotation marks around the friendly name to avoid potential issues with special characters, e.g. `\\\"Person\\\" <person@example.com>`."
},
"subject": {
"type": "string",
"description": "The subject line for your message. This overrides the subject of the transactional template (referenced by `transactional_message_id`)."
},
"body_amp": {
"type": "string",
"description": "If your message is an email, this is the AMP-enabled body of your message. If your recipient's email client doesn't support AMP, the `body` represents your fallback message."
},
"language": {
"type": "string",
"description": "Overrides language preferences for the person you want to send your transactional message to. Use one of our [supported two- or four-letter language codes](https://customer.io/docs/api/app/)."
},
"body_plain": {
"type": "string",
"description": "The plaintext body of your message. This overrides the body of your transactional template (referenced by `transactional_message_id`)."
}
}
},
{
"type": "object",
"required": [
"to",
"identifiers"
],
"properties": {
"send_at": {
"type": "integer",
"description": "A unix timestamp (seconds since epoch) determining when the message will be sent. The timestamp can be up to 90 days in the future. If this value is in the past, your message is sent immediately."
},
"identifiers": {
"oneOf": [
{
"type": "object",
"title": "id",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": 12345,
"description": "The identifier for the person represented by the transactional message. **NOTE**: If your workspace identifies people by email, use the `email` identifier instead.\n"
}
}
},
{
"type": "object",
"title": "email",
"required": [
"email"
],
"properties": {
"email": {
"type": "string",
"example": "cool.person@example.com",
"description": "The identifier for the person represented by the transactional message. Use this option if your workspace identifies people by email rather than by `id`."
}
}
},
{
"type": "object",
"title": "cio_id",
"required": [
"cio_id"
],
"properties": {
"cio_id": {
"type": "string",
"example": 3000001,
"description": "A unique, immutable identifier for a person, set by Customer.io when you add a person."
}
}
}
],
"description": "Identifies the person represented by your transactional message by one of, and only one of, `id`, `email`, or `cio_id`."
},
"queue_draft": {
"type": "boolean",
"default": false,
"description": "If true, your transactional message is held as a draft in Customer.io and not sent directly to your audience. You must go to the Deliveries and Drafts page to send your message."
},
"message_data": {
"type": "object",
"example": {
"account_id": "123dj",
"password_reset_token": "abcde-12345-fghij-d888"
},
"description": "An object containing the key-value pairs referenced using liquid in your message.",
"additionalProperties": {
"description": "Insert key-values that you want to reference in your message here.",
"x-additionalPropertiesName": "Liquid Data"
}
},
"send_to_unsubscribed": {
"type": "boolean",
"default": true,
"description": "If false, your message is not sent to unsubscribed recipients. Setting this value overrides the value set in the settings of your `transactional_message_id`."
},
"disable_message_retention": {
"type": "boolean",
"default": false,
"description": "If true, the message body is not retained in delivery history. Setting this value overrides the value set in the settings of your `transactional_message_id`."
}
}
},
{
"type": "object",
"properties": {
"to": {
"type": "string",
"example": "cool.person@example.com",
"description": "The message recipient(s). Supports multiple addresses separated by commas. Your request can contain up to 15 total recipients between the `to` and `bcc` keys.\n\nYou can include a display or \"friendly\" name in \"to\" address, but we recommend that you use quotation marks around the friendly name to avoid potential issues with special characters, e.g. `\\\"Person\\\" <person@example.com>`. \n"
},
"bcc": {
"type": "string",
"example": "bcc@example.com",
"description": "Blind copy message recipients. Supports multiple addresses separated by commas. Your request can contain up to 15 total recipients between the `to` and `bcc` keys."
},
"headers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "X-Mailgun-Tag",
"description": "name of header"
},
"value": {
"type": "string",
"example": "tag-name-for-tracking",
"description": "value of header"
}
}
},
"description": "Headers must be strings and cannot contain any non-ASCII characters or empty spaces. Some headers are reserved and cannot be overwritten."
},
"tracked": {
"type": "boolean",
"default": true,
"description": "If true, Customer.io tracks opens and link clicks in your message."
},
"fake_bcc": {
"type": "boolean",
"description": "If true, rather than sending true copies to BCC addresses, Customer.io sends a copy of the message with the subject line containing the recipient address(es).\n"
},
"reply_to": {
"type": "string",
"example": "replyto@example.com",
"description": "The address that recipients can reply to, if different from the `from` address."
},
"preheader": {
"type": "string",
"description": "Also known as \"preview text\", this is the block block of text that users see next to, or underneath, the subject line in their inbox."
},
"body_plain": {
"type": "string",
"description": "By default, we generate a plaintext version of your message body for each delivery. Use this key to override the default plain text body."
},
"attachments": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string",
"format": "base64",
"x-doNotRender": true,
"x-additionalPropertiesName": "Attachment Names"
}
},
"description": "A dictionary of attachments where the filename is the key and the value is the base64-encoded contents. The total size of all attachments must be less than 2 MB. Some filetype extensions are restricted.\n"
},
"disable_css_preprocessing": {
"type": "boolean",
"default": false,
"example": false,
"description": "Set to `true` to disable CSS preprocessing. This setting overrides the CSS preprocessing setting on the `transactional_message_id` as set in the user interface. Transactional emails have CSS preprocessing enabled by default."
}
}
}
],
"title": "With template",
"example": {
"to": "cool.person@example.com",
"bcc": "bcc@example.com",
"from": "override-templated-address@example.com",
"subject": "Did you really login from a new location?",
"tracked": true,
"identifiers": {
"email": "cool.person@example.com"
},
"queue_draft": false,
"message_data": {
"account_id": "123dj",
"password_reset_token": "abcde-12345-fghij-d888"
},
"send_to_unsubscribed": true,
"transactional_message_id": 44,
"disable_css_preprocessing": true,
"disable_message_retention": false
},
"description": "Send a transactional message using a template that you set up in Customer.io."
},
{
"allOf": [
{
"type": "object",
"required": [
"body",
"subject",
"from"
],
"properties": {
"body": {
"type": "string",
"example": "Your temporary password is {{message_data.password_reset_token}}",
"description": "The body of your message."
},
"from": {
"type": "string",
"example": "support@example.com",
"description": "The address that your email is from. This address must be verified by Customer.io. You can include a display/friendly name in your from address in the format `Person <person@example.com>`."
},
"subject": {
"type": "string",
"example": "Reset your password!",
"description": "The subject line for your message."
}
}
},
{
"type": "object",
"required": [
"to",
"identifiers"
],
"properties": {
"send_at": {
"type": "integer",
"description": "A unix timestamp (seconds since epoch) determining when the message will be sent. The timestamp can be up to 90 days in the future. If this value is in the past, your message is sent immediately."
},
"identifiers": {
"oneOf": [
{
"type": "object",
"title": "id",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": 12345,
"description": "The identifier for the person represented by the transactional message. **NOTE**: If your workspace identifies people by email, use the `email` identifier instead.\n"
}
}
},
{
"type": "object",
"title": "email",
"required": [
"email"
],
"properties": {
"email": {
"type": "string",
"example": "cool.person@example.com",
"description": "The identifier for the person represented by the transactional message. Use this option if your workspace identifies people by email rather than by `id`."
}
}
},
{
"type": "object",
"title": "cio_id",
"required": [
"cio_id"
],
"properties": {
"cio_id": {
"type": "string",
"example": 3000001,
"description": "A unique, immutable identifier for a person, set by Customer.io when you add a person."
}
}
}
],
"description": "Identifies the person represented by your transactional message by one of, and only one of, `id`, `email`, or `cio_id`."
},
"queue_draft": {
"type": "boolean",
"default": false,
"description": "If true, your transactional message is held as a draft in Customer.io and not sent directly to your audience. You must go to the Deliveries and Drafts page to send your message."
},
"message_data": {
"type": "object",
"example": {
"account_id": "123dj",
"password_reset_token": "abcde-12345-fghij-d888"
},
"description": "An object containing the key-value pairs referenced using liquid in your message.",
"additionalProperties": {
"description": "Insert key-values that you want to reference in your message here.",
"x-additionalPropertiesName": "Liquid Data"
}
},
"send_to_unsubscribed": {
"type": "boolean",
"default": true,
"description": "If false, your message is not sent to unsubscribed recipients. Setting this value overrides the value set in the settings of your `transactional_message_id`."
},
"disable_message_retention": {
"type": "boolean",
"default": false,
"description": "If true, the message body is not retained in delivery history. Setting this value overrides the value set in the settings of your `transactional_message_id`."
}
}
},
{
"type": "object",
"properties": {
"to": {
"type": "string",
"example": "cool.person@example.com",
"description": "The message recipient(s). Supports multiple addresses separated by commas. Your request can contain up to 15 total recipients between the `to` and `bcc` keys.\n\nYou can include a display or \"friendly\" name in \"to\" address, but we recommend that you use quotation marks around the friendly name to avoid potential issues with special characters, e.g. `\\\"Person\\\" <person@example.com>`. \n"
},
"bcc": {
"type": "string",
"example": "bcc@example.com",
"description": "Blind copy message recipients. Supports multiple addresses separated by commas. Your request can contain up to 15 total recipients between the `to` and `bcc` keys."
},
"headers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "X-Mailgun-Tag",
"description": "name of header"
},
"value": {
"type": "string",
"example": "tag-name-for-tracking",
"description": "value of header"
}
}
},
"description": "Headers must be strings and cannot contain any non-ASCII characters or empty spaces. Some headers are reserved and cannot be overwritten."
},
"tracked": {
"type": "boolean",
"default": true,
"description": "If true, Customer.io tracks opens and link clicks in your message."
},
"fake_bcc": {
"type": "boolean",
"description": "If true, rather than sending true copies to BCC addresses, Customer.io sends a copy of the message with the subject line containing the recipient address(es).\n"
},
"reply_to": {
"type": "string",
"example": "replyto@example.com",
"description": "The address that recipients can reply to, if different from the `from` address."
},
"preheader": {
"type": "string",
"description": "Also known as \"preview text\", this is the block block of text that users see next to, or underneath, the subject line in their inbox."
},
"body_plain": {
"type": "string",
"description": "By default, we generate a plaintext version of your message body for each delivery. Use this key to override the default plain text body."
},
"attachments": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"type": "string",
"format": "base64",
"x-doNotRender": true,
"x-additionalPropertiesName": "Attachment Names"
}
},
"description": "A dictionary of attachments where the filename is the key and the value is the base64-encoded contents. The total size of all attachments must be less than 2 MB. Some filetype extensions are restricted.\n"
},
"disable_css_preprocessing": {
"type": "boolean",
"default": false,
"example": false,
"description": "Set to `true` to disable CSS preprocessing. This setting overrides the CSS preprocessing setting on the `transactional_message_id` as set in the user interface. Transactional emails have CSS preprocessing enabled by default."
}
}
}
],
"title": "Without template",
"example": {
"to": "cool.person@example.com",
"bcc": "bcc@example.com",
"body": "Your temporary password is {{message_data.password_reset_token}}",
"from": "Support <support@example.com>",
"subject": "Your password reset request!",
"tracked": true,
"identifiers": {
"id": 12345
},
"queue_draft": false,
"message_data": {
"account_id": "123dj",
"password_reset_token": "abcde-12345-fghij-d888"
},
"send_to_unsubscribed": true,
"disable_css_preprocessing": true,
"disable_message_retention": false
},
"description": "Create your own message from scratch."
}
],
"description": "The payload of a transactional message."
}
senderIdentityObject
{
"type": "object",
"example": {
"id": 4534,
"name": "Cher Ami",
"email": "test@example.com",
"address": "Cher Ami <test@example.com>",
"template_type": "email",
"auto_generated": false,
"deduplicate_id": "4534:1478035647"
},
"properties": {
"id": {
"type": "integer",
"description": "The identifier of a sender."
},
"name": {
"type": "string",
"description": "The name of the sender."
},
"email": {
"type": "string",
"description": "The email address of the sender."
},
"address": {
"type": "string",
"description": "The sender name and email address in the format `name <name@example.com>`."
},
"template_type": {
"enum": [
"email",
"phone"
],
"type": "string",
"description": "The type of sender."
},
"auto_generated": {
"type": "boolean",
"description": "If true, the sender is automatically generated by Customer.io."
},
"deduplicate_id": {
"type": "string",
"example": "15:1492548073",
"readOnly": true,
"description": "An identifier in the format `id:timestamp` where the id is the id of the object you are working with (Campaigns, Deliveries, Exports, Identities, Newsletters, Segments, and Templates), and the timestamp is the last time the object was updated."
}
},
"description": "Information about a sender."
}
sending_state
{
"enum": [
"automatic",
"draft",
"off"
],
"type": "string",
"description": "Determines the sending behavior for the action. `automatic` sends the action automatically when triggered; `draft` queues drafts when the action is triggered; or `off` to disable the action."
}
sendpush
{
"allOf": [
{
"type": "object",
"required": [
"transactional_message_id"
],
"properties": {
"transactional_message_id": {
"oneOf": [
{
"type": "integer",
"title": "ID (integer)",
"example": 44,
"description": "The ID of the transactional message you want to send."
},
{
"type": "string",
"title": "Trigger Name (string)",
"example": "pwdreset",
"description": "The name of trigger for the transactional message you want to send; you set the trigger name in the *Configure Settings* step when setting up your message. This is case insensitive."
}
],
"description": "The transactional message template that you want to use for your message. You can call the template by its numerical ID or by the *Trigger Name* that you assigned the template (case insensitive)."
}
}
},
{
"type": "object",
"properties": {
"to": {
"enum": [
"all",
"last_used",
"$device_token"
],
"type": "string",
"default": "all",
"description": "The person's device(s) you want to send this push to. One of `all`, `last_used`, or a custom device token which belongs to the profile from the Identifiers block. Defaults to 'all'. This overrides To from the transactional template (referenced by `transactional_message_id`)."
},
"link": {
"type": "string",
"description": "A deep link to open when the push is tapped. This overrides Link from the transactional template (referenced by `transactional_message_id`)."
},
"sound": {
"enum": [
"default",
"none"
],
"type": "string",
"default": "default",
"description": "**For iOS Only**: your notification can alert users with the device's default notification sound or play no sound at all. \n"
},
"title": {
"type": "string",
"description": "The title for your notification. This overrides the title of the transactional template (referenced by `transactional_message_id`)."
},
"message": {
"type": "string",
"description": "The message body for your notification. This overrides the notification body of the transactional template (referenced by `transactional_message_id`)."
},
"language": {
"type": "string",
"description": "Overrides language preferences for the person you want to send your transactional message to. Use one of our [supported two- or four-letter language codes](https://customer.io/docs/api/app/)."
},
"image_url": {
"type": "string",
"description": "An image URL to show in the push. This overrides Image from the transactional template (referenced by `transactional_message_id`)."
},
"custom_data": {
"type": "object",
"description": "An optional list of key/value pairs to attach to the push payload. Due to a Firebase limitation we only support sending string key value pairs. This overrides Custom Data from the transactional template (referenced by `transactional_message_id`)."
},
"custom_device": {
"allOf": [
{
"type": "object",
"required": [
"token"
],
"properties": {
"token": {
"type": "string",
"description": "The device token."
}
}
},
{
"type": "object",
"required": [
"platform"
],
"properties": {
"platform": {
"enum": [
"ios",
"android"
],
"type": "string",
"description": "The device/messaging platform."
},
"last_used": {
"type": "integer",
"format": "unix timestamp",
"description": "The `timestamp` when you last identified this device. If you don't pass a timestamp when you add or update a device, we use the time of the request itself. Our SDKs identify a device when a person launches their app."
},
"attributes": {
"type": "object",
"properties": {
"device_os": {
"type": "string",
"description": "The operating system, including the version, on the device."
},
"app_version": {
"type": "string",
"description": "The version of your app that a customer uses. You might target app versions to let people know when they need to update, or expose them to new features when they do."
},
"_last_status": {
"enum": [
"",
"bounced",
"sent",
"suppressed"
],
"type": "string",
"readOnly": true,
"description": "The delivery status of the last message sent to the device—sent, bounced, or suppressed. An empty string indicates that that the device hasn't received a push yet."
},
"device_model": {
"type": "string",
"description": "The model of the device a person uses."
},
"push_enabled": {
"enum": [
"true",
"false"
],
"type": "string",
"description": "If `\"true\"`, the device is opted-in and can receive push notifications."
},
"device_locale": {
"type": "string",
"description": "The four-letter [IETF language code](https://customer.io/docs/api/app/) for the device. For example, `en-MX` (indicating an app in Spanish formatted for a user in Mexico) or `es-ES` (indicating an app in Spanish formatted for a user in Spain)."
},
"cio_sdk_version": {
"type": "string",
"description": "The version of the Customer.io SDK in the app."
}
},
"description": "Attributes that you can reference to segment your audience—like a person's attributes, but specific to a device. These can be either the attributes defined below or custom key-value attributes.",
"additionalProperties": {
"type": "string",
"description": "Custom properties that you want to associate with the device.",
"x-additionalPropertiesName": "Custom Device Attributes"
}
}
},
"description": "Device information common to the v1 and v2 APIs."
}
],
"description": "A device to perform an upsert operation at the time of send. The device will be added/updated on the profile from the Identifiers block."
},
"custom_payload": {
"type": "object",
"properties": {
"ios": {
"oneOf": [
{
"type": "object",
"title": "FCM",
"required": [
"message"
],
"properties": {
"message": {
"type": "object",
"required": [
"apns"
],
"properties": {
"apns": {
"type": "object",
"required": [
"payload"
],
"properties": {
"headers": {
"type": "object",
"description": "Headers defined by [Apple's payload reference](https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/sending_notification_requests_to_apns) that you want to pass through FCM."
},
"payload": {
"type": "object",
"properties": {
"CIO": {
"type": "object",
"required": [
"push"
],
"properties": {
"push": {
"type": "object",
"properties": {
"body": {
"type": "string",
"description": "The body of your push notification."
},
"link": {
"type": "string",
"description": "A deep link (to a page in your app), or a link to a web page."
},
"image": {
"type": "string",
"description": "The URL of an HTTPS image that you want to use for your message."
},
"title": {
"type": "string",
"description": "The title of your push notification."
}
},
"description": "A push payload for the iOS SDK."
}
},
"description": "Contains properties interpreted by the Customer.io iOS SDK."
},
"aps": {
"type": "object",
"properties": {
"alert": {
"oneOf": [
{
"type": "string",
"title": "Simple alert",
"description": "A simple alert message."
},
{
"type": "object",
"title": "Complex alert",
"properties": {
"body": {
"type": "string",
"description": "The body of your push notification."
},
"title": {
"type": "string",
"description": "The title of your push notification."
},
"loc-key": {
"type": "string",
"description": "The key for a localized message string in your app’s Localizable.strings file."
},
"loc-args": {
"type": "array",
"items": {
"type": "string"
},
"description": "An array of replacement value strings for variables in your message text. Each %@ character in the loc-key is replaced by a value from this array, in the order they appear in the message body."
},
"subtitle": {
"type": "string",
"description": "Additional information that explains the purpose of the notification."
},
"launch-image": {
"type": "string",
"description": "The name of the launch image file you want to display. When a user launches your app, they'll see this image or storyboard file rather than your app’s normal launch image."
},
"title-loc-key": {
"type": "string",
"description": "The key for a localized title string in your app’s Localizable.strings files."
},
"title-loc-args": {
"type": "array",
"items": {
"type": "string"
},
"description": "An array of replacement value strings for variables in your title string. Each %@ character in the title-loc-key is replaced by a value from this array, in the order they appear in the title string."
},
"subtitle-loc-key": {
"type": "string",
"description": "The key for a localized subtitle string in your app’s Localizable.strings file."
},
"subtitle-loc-args": {
"type": "array",
"items": {
"type": "string"
},
"description": "An array of replacement value strings for variables in your subtitle string. Each %@ character in the subtitle-loc-key is replaced by a value from this array, in the order they appear in the subtitle string."
}
}
}
]
},
"badge": {
"type": "integer",
"description": "The number you want to display on your app's icon. Set to 0 to remove the current badge, if any."
},
"sound": {
"oneOf": [
{
"type": "string",
"title": "Regular alert",
"description": "The name of a sound file in your app’s main bundle or in the Library/Sounds folder of your app’s container directory. Use “default” to play the system sound. For critical alerts, you'll pass an object instead."
},
{
"type": "object",
"title": "Critical alert",
"properties": {
"name": {
"type": "string",
"description": "The name of a sound file in your app’s main bundle or in the Library/Sounds folder of your app’s container directory. Use “default” to play the system sound."
},
"volume": {
"type": "number",
"description": "The volume for a critical alert between 0 and 1, where 0 is silent and 1 is full volume."
},
"critical": {
"type": "integer",
"description": "1 indicates critical. 0 is not critical."
}
}
}
]
},
"category": {
"type": "string",
"description": "The notification’s type. This string must correspond to the identifier of one of the `UNNotificationCategory` objects you register at launch time."
},
"thread-id": {
"type": "string",
"description": "An identifier to group related notifications."
},
"mutable-content": {
"type": "integer",
"description": "The notification service app extension flag. If the value is 1, your notification is passed to your notification service app extension before delivery. Use your extension to modify the notification’s content."
},
"relevance-score": {
"type": "number",
"description": "A number between 0 and 1. The highest score is considered the \"most relevant\" and is featured in the notification summary."
},
"content-available": {
"type": "integer",
"description": "The background notification flag. Use `1` without an `alert` to perform a silent update. `0` indicates a normal push notification."
},
"target-content-id": {
"type": "string",
"description": "The identifier of the window brought forward."
},
"interruption-level": {
"enum": [
"passive",
"active",
"time-sensitive",
"critical"
],
"type": "string",
"description": "Indicates the importance and delivery timing of a notification."
}
},
"description": "A push payload intended for an iOS device."
}
},
"description": "Contains a push payload.",
"additionalProperties": {
"description": "Additional properties that you've set up your app to interpret outside of the Customer.io SDK.",
"x-additionalPropertiesName": "Custom key-value pairs"
}
}
},
"description": "Defines a payload for iOS devices sent through Firebase Cloud Messaging (FCM)."
}
},
"description": "The base object for all FCM payloads."
}
}
},
{
"type": "object",
"title": "APNS",
"properties": {
"CIO": {
"type": "object",
"required": [
"push"
],
"properties": {
"push": {
"type": "object",
"properties": {
"link": {
"type": "string",
"description": "A deep link (to a page in your app), or a link to a web page."
},
"image": {
"type": "string",
"description": "The URL of an HTTPS image that you want to use for your message."
}
},
"description": "Describes push notification options supported by the CIO SDK."
}
},
"description": "Contains options supported by the Customer.io SDK."
},
"aps": {
"type": "object",
"properties": {
"alert": {
"oneOf": [
{
"type": "string",
"title": "Simple alert",
"description": "A simple alert message."
},
{
"type": "object",
"title": "Complex alert",
"properties": {
"body": {
"type": "string",
"description": "The body of your push notification."
},
"title": {
"type": "string",
"description": "The title of your push notification."
},
"loc-key": {
"type": "string",
"description": "The key for a localized message string in your app’s Localizable.strings file."
},
"loc-args": {
"type": "array",
"items": {
"type": "string"
},
"description": "An array of replacement value strings for variables in your message text. Each %@ character in the loc-key is replaced by a value from this array, in the order they appear in the message body."
},
"subtitle": {
"type": "string",
"description": "Additional information that explains the purpose of the notification."
},
"launch-image": {
"type": "string",
"description": "The name of the launch image file you want to display. When a user launches your app, they'll see this image or storyboard file rather than your app’s normal launch image."
},
"title-loc-key": {
"type": "string",
"description": "The key for a localized title string in your app’s Localizable.strings files."
},
"title-loc-args": {
"type": "array",
"items": {
"type": "string"
},
"description": "An array of replacement value strings for variables in your title string. Each %@ character in the title-loc-key is replaced by a value from this array, in the order they appear in the title string."
},
"subtitle-loc-key": {
"type": "string",
"description": "The key for a localized subtitle string in your app’s Localizable.strings file."
},
"subtitle-loc-args": {
"type": "array",
"items": {
"type": "string"
},
"description": "An array of replacement value strings for variables in your subtitle string. Each %@ character in the subtitle-loc-key is replaced by a value from this array, in the order they appear in the subtitle string."
}
}
}
]
},
"badge": {
"type": "integer",
"description": "The number you want to display on your app's icon. Set to 0 to remove the current badge, if any."
},
"sound": {
"oneOf": [
{
"type": "string",
"title": "Regular alert",
"description": "The name of a sound file in your app’s main bundle or in the Library/Sounds folder of your app’s container directory. Use “default” to play the system sound. For critical alerts, you'll pass an object instead."
},
{
"type": "object",
"title": "Critical alert",
"properties": {
"name": {
"type": "string",
"description": "The name of a sound file in your app’s main bundle or in the Library/Sounds folder of your app’s container directory. Use “default” to play the system sound."
},
"volume": {
"type": "number",
"description": "The volume for a critical alert between 0 and 1, where 0 is silent and 1 is full volume."
},
"critical": {
"type": "integer",
"description": "1 indicates critical. 0 is not critical."
}
}
}
]
},
"category": {
"type": "string",
"description": "The notification’s type. This string must correspond to the identifier of one of the `UNNotificationCategory` objects you register at launch time."
},
"thread-id": {
"type": "string",
"description": "An identifier to group related notifications."
},
"mutable-content": {
"type": "integer",
"description": "The notification service app extension flag. If the value is 1, your notification is passed to your notification service app extension before delivery. Use your extension to modify the notification’s content."
},
"relevance-score": {
"type": "number",
"description": "A number between 0 and 1. The highest score is considered the \"most relevant\" and is featured in the notification summary."
},
"content-available": {
"type": "integer",
"description": "The background notification flag. Use `1` without an `alert` to perform a silent update. `0` indicates a normal push notification."
},
"target-content-id": {
"type": "string",
"description": "The identifier of the window brought forward."
},
"interruption-level": {
"enum": [
"passive",
"active",
"time-sensitive",
"critical"
],
"type": "string",
"description": "Indicates the importance and delivery timing of a notification."
}
},
"description": "A push payload intended for an iOS device."
}
}
}
],
"description": "Your payload changes depending on whether you send to iOS devices through Google's Firebase Cloud Messaging (FCM) or Apple's Push Notification service (APNs)."
},
"android": {
"type": "object",
"required": [
"message"
],
"properties": {
"message": {
"type": "object",
"properties": {
"data": {
"type": "object",
"description": "Contains key-value pairs that your app interprets.",
"additionalProperties": {
"type": "string",
"x-doNotRender": true,
"x-additionalPropertiesName": "Attachment Names"
}
},
"android": {
"type": "object",
"properties": {
"notification": {
"type": "object",
"properties": {
"tag": {
"type": "string",
"description": "Identifier to replace existing notifications in the notification drawer. If empty, each request creates a new notification.\n\nIf you specify a tag, and a notification with the same tag is already being shown, the new notification replaces the existing one in the notification drawer. \n"
},
"icon": {
"type": "string",
"description": "Sets the notification icon to `myicon` for drawable resource `myicon`. If you don't send this key, FCM displays the launcher icon from your app manifest."
},
"color": {
"type": "string",
"description": "The notification's icon color in `#rrggbb` format."
},
"sound": {
"type": "string",
"description": "The sound that plays when the device receives the notification. Supports `\"default\"` or the filename of a sound resource bundled in your app. Sound files must reside in `/res/raw/`."
},
"body_loc_arg": {
"type": "string",
"description": "Variable string values used in place of the format specifiers in `body_loc_key` to localize the body text to the user's current localization. See Formatting and Styling for more information."
},
"body_loc_key": {
"type": "string",
"description": "The key to the body string in the app's string resources that you want to use to localize the body text to the user's current localization. See [String Resources](https://developer.android.com/guide/topics/resources/string-resource/) for more information."
},
"click_action": {
"type": "string",
"description": "The action that occurs when a user taps on the notification. Launches an activity with a matching intent filter when a person taps the notification."
},
"title_loc_arg": {
"type": "string",
"description": "Variable string values used in place of the format specifiers in `title_loc_key` to localize the title text to the user's current localization. See Formatting and Styling for more information."
},
"title_loc_key": {
"type": "string",
"description": "The key to the title string in the app's string resources that you want to use to localize the title text to the user's current localization. See [String Resources](https://developer.android.com/guide/topics/resources/string-resource/) for more information."
}
},
"description": "Properties supported specifically by Android on FCM."
}
},
"description": "Contains custom push options for your notification."
},
"notification": {
"type": "object",
"properties": {
"body": {
"type": "string",
"description": "The body of your push notification."
},
"title": {
"type": "string",
"description": "The title of your push notification."
}
},
"description": "Contains the push body and title."
}
},
"description": "The parent object for Android custom push payloads."
}
},
"description": "A custom push payload for Android devices."
}
},
"description": "An optional list of key/value pairs to attach to the push payload. Due to a Firebase limitation we only support sending string key value pairs. This overrides every other parameter, including any Custom Payload from the transactional template (referenced by `transactional_message_id`)."
}
}
},
{
"type": "object",
"required": [
"to",
"identifiers"
],
"properties": {
"send_at": {
"type": "integer",
"description": "A unix timestamp (seconds since epoch) determining when the message will be sent. The timestamp can be up to 90 days in the future. If this value is in the past, your message is sent immediately."
},
"identifiers": {
"oneOf": [
{
"type": "object",
"title": "id",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": 12345,
"description": "The identifier for the person represented by the transactional message. **NOTE**: If your workspace identifies people by email, use the `email` identifier instead.\n"
}
}
},
{
"type": "object",
"title": "email",
"required": [
"email"
],
"properties": {
"email": {
"type": "string",
"example": "cool.person@example.com",
"description": "The identifier for the person represented by the transactional message. Use this option if your workspace identifies people by email rather than by `id`."
}
}
},
{
"type": "object",
"title": "cio_id",
"required": [
"cio_id"
],
"properties": {
"cio_id": {
"type": "string",
"example": 3000001,
"description": "A unique, immutable identifier for a person, set by Customer.io when you add a person."
}
}
}
],
"description": "Identifies the person represented by your transactional message by one of, and only one of, `id`, `email`, or `cio_id`."
},
"queue_draft": {
"type": "boolean",
"default": false,
"description": "If true, your transactional message is held as a draft in Customer.io and not sent directly to your audience. You must go to the Deliveries and Drafts page to send your message."
},
"message_data": {
"type": "object",
"example": {
"account_id": "123dj",
"password_reset_token": "abcde-12345-fghij-d888"
},
"description": "An object containing the key-value pairs referenced using liquid in your message.",
"additionalProperties": {
"description": "Insert key-values that you want to reference in your message here.",
"x-additionalPropertiesName": "Liquid Data"
}
},
"send_to_unsubscribed": {
"type": "boolean",
"default": true,
"description": "If false, your message is not sent to unsubscribed recipients. Setting this value overrides the value set in the settings of your `transactional_message_id`."
},
"disable_message_retention": {
"type": "boolean",
"default": false,
"description": "If true, the message body is not retained in delivery history. Setting this value overrides the value set in the settings of your `transactional_message_id`."
}
}
}
],
"example": {
"title": "Did you really login from a new location?",
"identifiers": {
"id": 12345
},
"message_data": {
"account_id": "123dj",
"password_reset_token": "abcde-12345-fghij-d888"
},
"transactional_message_id": 44
},
"description": "The payload of a transactional push message."
}
simpleAudienceFilter
{
"anyOf": [
{
"type": "object",
"title": "segment",
"properties": {
"segment": {
"type": "object",
"title": "segment",
"properties": {
"id": {
"type": "integer",
"example": 4,
"description": "The ID of the segment you want to return people from."
}
},
"description": "Provide the `id` of a segment containing people you want to search for."
}
},
"description": "Filter for people who belong to a segment."
},
{
"type": "object",
"title": "audience",
"properties": {
"attribute": {
"type": "object",
"title": "attribute",
"example": {
"field": "unsubscribed",
"value": true,
"operator": "eq"
},
"required": [
"field",
"operator"
],
"properties": {
"field": {
"type": "string",
"example": "first_name",
"description": "The name of the attribute you want to filter against."
},
"value": {
"type": "string",
"description": "The value you want to match for this attribute. You must include a value if you use the `eq` operator."
},
"operator": {
"enum": [
"eq",
"exists"
],
"type": "string",
"description": "Determine how to evaluate criteria against the field—`exists` returns results if a person in the audience has the attribute; `eq` returns results if the audience has the attribute and the attribute has the `value` you specify."
}
},
"description": "Filter your audience by attribute."
}
},
"description": "filter for people who have an attribute or an attribute value."
}
]
}
slack_attempted
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"attempted"
],
"type": "string",
"description": "A slack message failed and will be retried."
}
}
}
],
"title": "attempted"
}
slack_clicked
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"href",
"link_id"
],
"properties": {
"href": {
"type": "string",
"example": "https://www.customer.io/docs",
"description": "The URL of the link that a person clicked."
},
"link_id": {
"type": "integer",
"example": 1,
"description": "The identifier for the tracked link that a person clicked or tapped."
},
"recipient": {
"type": "string",
"description": "The channel or person that received the message, i.e. `#general`."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"clicked"
],
"type": "string",
"description": "A person clicked a tracked link in a Slack message."
}
}
}
],
"title": "clicked"
}
slack_drafted
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
"metric": {
"enum": [
"drafted"
],
"type": "string",
"description": "A slack message was drafted."
}
}
}
],
"title": "drafted"
}
slack_event
{
"oneOf": [
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
"metric": {
"enum": [
"drafted"
],
"type": "string",
"description": "A slack message was drafted."
}
}
}
],
"title": "drafted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"attempted"
],
"type": "string",
"description": "A slack message failed and will be retried."
}
}
}
],
"title": "attempted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient"
],
"properties": {
"content": {
"type": "string",
"description": "The of your slack message. This key only appears if you enabled the *Body Content* option when setting up your webhook."
},
"recipient": {
"type": "string",
"description": "The channel or person that received the message, i.e. `#general`."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"sent"
],
"type": "string",
"description": "A slack message was sent. If you enabled the *Body Content* option with your webhook, the payload includes the `content` of your message."
}
}
}
],
"title": "sent"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"href",
"link_id"
],
"properties": {
"href": {
"type": "string",
"example": "https://www.customer.io/docs",
"description": "The URL of the link that a person clicked."
},
"link_id": {
"type": "integer",
"example": 1,
"description": "The identifier for the tracked link that a person clicked or tapped."
},
"recipient": {
"type": "string",
"description": "The channel or person that received the message, i.e. `#general`."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"clicked"
],
"type": "string",
"description": "A person clicked a tracked link in a Slack message."
}
}
}
],
"title": "clicked"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"failed"
],
"type": "string",
"description": "A slack message failed."
}
}
}
],
"title": "failed"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"undeliverable"
],
"type": "string",
"description": "A message was undeliverable. Undeliverable messages are messages that have either hit a message limit, come from a newsletter that was cancelled or deleted, or an environment that has delivery disabled (which is something you might do if you’re testing an integration). If you’re not using message limits, you probably won’t see this event."
}
}
}
],
"title": "failed"
}
],
"title": "Slack",
"description": "Events pertaining to Slack messages.",
"discriminator": {
"mapping": {
"sent": "#/components/schemas/slack_sent",
"failed": "#/components/schemas/slack_failed",
"clicked": "#/components/schemas/slack_clicked",
"drafted": "#/components/schemas/slack_drafted",
"attempted": "#/components/schemas/slack_attempted",
"undeliverable": "#/components/schemas/slack_undeliverable"
},
"propertyName": "metric"
}
}
slack_event_common
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
}
slack_events
{
"type": "object",
"properties": {
"slack_sent": {
"type": "boolean",
"description": "Reports when a message is sent from Customer.io to the delivery provider. Set to true to report this event type."
},
"slack_failed": {
"type": "boolean",
"description": "Reports when a message couldn't be sent to the delivery provider. Set to true to report this event type."
},
"slack_clicked": {
"type": "boolean",
"description": "Reports when a person clicks a tracked link in a message. Set to true to report this event type."
},
"slack_drafted": {
"type": "boolean",
"description": "Reports when a message draft is created. Set to true to report this event type."
},
"slack_attempted": {
"type": "boolean",
"description": "Reports when a message could not be sent to the delivery provider will retry. Set to true to report this event type."
},
"slack_converted": {
"type": "boolean",
"description": "Reports when a person matches a conversion goal attributed to a a message. Set to true to report this event type."
}
},
"description": "Describes the slack events reported from Customer.io to a webhook."
}
slack_failed
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"failed"
],
"type": "string",
"description": "A slack message failed."
}
}
}
],
"title": "failed"
}
slack_sent
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient"
],
"properties": {
"content": {
"type": "string",
"description": "The of your slack message. This key only appears if you enabled the *Body Content* option when setting up your webhook."
},
"recipient": {
"type": "string",
"description": "The channel or person that received the message, i.e. `#general`."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"sent"
],
"type": "string",
"description": "A slack message was sent. If you enabled the *Body Content* option with your webhook, the payload includes the `content` of your message."
}
}
}
],
"title": "sent"
}
slack_undeliverable
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"slack"
],
"type": "string",
"description": "The event relates to a Slack message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"undeliverable"
],
"type": "string",
"description": "A message was undeliverable. Undeliverable messages are messages that have either hit a message limit, come from a newsletter that was cancelled or deleted, or an environment that has delivery disabled (which is something you might do if you’re testing an integration). If you’re not using message limits, you probably won’t see this event."
}
}
}
],
"title": "failed"
}
sms_attempted
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"attempted"
],
"type": "string",
"description": "An SMS could not be sent to the delivery provider, but will retry."
}
}
}
],
"title": "attempted"
}
sms_bounced
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"failure_message"
],
"properties": {
"recipient": {
"type": "string",
"description": "The MSISDN (phone number) of the SMS recipient."
},
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"bounced"
],
"type": "string",
"description": "The delivery provider was unable to deliver an SMS message."
}
}
}
],
"title": "bounced"
}
sms_clicked
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"link_id",
"href"
],
"properties": {
"href": {
"type": "string",
"example": "https://www.customer.io/docs",
"description": "The URL of the link that a person clicked."
},
"link_id": {
"type": "integer",
"example": 1,
"description": "The identifier for the tracked link that a person clicked or tapped."
},
"recipient": {
"type": "string",
"description": "The MSISDN (phone number) of the SMS recipient."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"clicked"
],
"type": "string",
"description": "A recipient tapped a link in an SMS message they received."
}
}
}
],
"title": "clicked"
}
sms_converted
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient"
],
"properties": {
"recipient": {
"type": "string",
"description": "The MSISDN (phone number) of the SMS recipient."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"converted"
],
"type": "string",
"description": "A person matched a conversion goal attributed to an SMS."
}
}
}
],
"title": "converted"
}
sms_delivered
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient"
],
"properties": {
"recipient": {
"type": "string",
"description": "The MSISDN (phone number) of the SMS recipient."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"delivered"
],
"type": "string",
"description": "An SMS notification was delivered to a recipient."
}
}
}
],
"title": "delivered"
}
sms_drafted
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
"metric": {
"enum": [
"drafted"
],
"type": "string",
"description": "An SMS notification was drafted."
}
}
}
],
"title": "drafted"
}
sms_event
{
"oneOf": [
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
"metric": {
"enum": [
"drafted"
],
"type": "string",
"description": "An SMS notification was drafted."
}
}
}
],
"title": "drafted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"attempted"
],
"type": "string",
"description": "An SMS could not be sent to the delivery provider, but will retry."
}
}
}
],
"title": "attempted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient"
],
"properties": {
"content": {
"type": "string",
"description": "The body of your message. This key only appears if you enabled the *Body Content* option when setting up your webhook."
},
"recipient": {
"type": "string",
"description": "The MSISDN (phone number) of the SMS recipient."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"sent"
],
"type": "string",
"description": "An SMS notification was sent. If you enabled the *Body Content* option with your webhook, the payload includes the `content` of your message."
}
}
}
],
"title": "sent"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient"
],
"properties": {
"recipient": {
"type": "string",
"description": "The MSISDN (phone number) of the SMS recipient."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"delivered"
],
"type": "string",
"description": "An SMS notification was delivered to a recipient."
}
}
}
],
"title": "delivered"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"link_id",
"href"
],
"properties": {
"href": {
"type": "string",
"example": "https://www.customer.io/docs",
"description": "The URL of the link that a person clicked."
},
"link_id": {
"type": "integer",
"example": 1,
"description": "The identifier for the tracked link that a person clicked or tapped."
},
"recipient": {
"type": "string",
"description": "The MSISDN (phone number) of the SMS recipient."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"clicked"
],
"type": "string",
"description": "A recipient tapped a link in an SMS message they received."
}
}
}
],
"title": "clicked"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient"
],
"properties": {
"recipient": {
"type": "string",
"description": "The MSISDN (phone number) of the SMS recipient."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"converted"
],
"type": "string",
"description": "A person matched a conversion goal attributed to an SMS."
}
}
}
],
"title": "converted"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient",
"failure_message"
],
"properties": {
"recipient": {
"type": "string",
"description": "The MSISDN (phone number) of the SMS recipient."
},
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"bounced"
],
"type": "string",
"description": "The delivery provider was unable to deliver an SMS message."
}
}
}
],
"title": "bounced"
},
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"failed"
],
"type": "string",
"description": "An SMS couldn't be sent to the delivery provider."
}
}
}
],
"title": "failed"
}
],
"title": "SMS",
"description": "Events pertaining to SMS notifications.",
"discriminator": {
"mapping": {
"sent": "#/components/schemas/sms_sent",
"failed": "#/components/schemas/sms_failed",
"bounced": "#/components/schemas/sms_bounced",
"clicked": "#/components/schemas/sms_clicked",
"drafted": "#/components/schemas/sms_drafted",
"attempted": "#/components/schemas/sms_attempted",
"converted": "#/components/schemas/sms_converted",
"delivered": "#/components/schemas/sms_delivered"
},
"propertyName": "metric"
}
}
sms_event_common
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
}
sms_events
{
"type": "object",
"properties": {
"sms_sent": {
"type": "boolean",
"description": "Reports when a message is sent from Customer.io to the delivery provider. Set to true to report this event type."
},
"sms_failed": {
"type": "boolean",
"description": "Reports when a message couldn't be sent to the delivery provider. Set to true to report this event type."
},
"sms_bounced": {
"type": "boolean",
"description": "Reports when the delivery provider is unable to deliver a message to the recipient. Set to true to report this event type."
},
"sms_clicked": {
"type": "boolean",
"description": "Reports when a person clicks a tracked link in a message. Set to true to report this event type."
},
"sms_drafted": {
"type": "boolean",
"description": "Reports when a message draft is created. Set to true to report this event type."
},
"sms_attempted": {
"type": "boolean",
"description": "Reports when a push notification could not be sent to the delivery provider will retry. Set to true to report this event type."
},
"sms_converted": {
"type": "boolean",
"description": "Reports when a person matches a conversion goal attributed to a a message. Set to true to report this event type."
},
"sms_delivered": {
"type": "boolean",
"description": "The delivery provider reports that the message is delivered. Set to true to report this event type."
}
},
"description": "Describes the SMS events reported from Customer.io to a webhook."
}
sms_failed
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"failed"
],
"type": "string",
"description": "An SMS couldn't be sent to the delivery provider."
}
}
}
],
"title": "failed"
}
sms_recipient
{
"type": "string",
"example": "+15558675309",
"description": "The MSISDN (phone number) of the recipient."
}
sms_sent
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"recipient"
],
"properties": {
"content": {
"type": "string",
"description": "The body of your message. This key only appears if you enabled the *Body Content* option when setting up your webhook."
},
"recipient": {
"type": "string",
"description": "The MSISDN (phone number) of the SMS recipient."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"sent"
],
"type": "string",
"description": "An SMS notification was sent. If you enabled the *Body Content* option with your webhook, the payload includes the `content` of your message."
}
}
}
],
"title": "sent"
}
sms_undeliverable
{
"allOf": [
{
"type": "object",
"required": [
"event_id",
"object_type",
"timestamp"
],
"properties": {
"event_id": {
"type": "string",
"example": "01E4C4CT6YDC7Y5M7FE1GWWPQJ",
"description": "The unique ID of the reporting webhook event being sent."
},
"timestamp": {
"type": "integer",
"format": "unix timestamp",
"example": 1613063089,
"description": "The unix timestamp when the event occurred."
},
"object_type": {
"enum": [
"sms"
],
"type": "string",
"description": "The event relates to an SMS message."
}
}
},
{
"type": "object",
"required": [
"metric",
"data"
],
"properties": {
"data": {
"allOf": [
{
"oneOf": [
{
"type": "object",
"title": "API triggered broadcast",
"required": [
"trigger_id",
"broadcast_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"trigger_id": {
"type": "integer",
"example": 1,
"description": "The trigger ID returned by the [Trigger Broadcast API](https://customer.io/docs/api/app/)."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"broadcast_id": {
"type": "integer",
"example": 2,
"nullable": true,
"description": "The identifier for a broadcast."
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
}
}
},
{
"type": "object",
"title": "Campaign",
"required": [
"campaign_id",
"delivery_id",
"action_id",
"identifiers"
],
"properties": {
"action_id": {
"type": "integer",
"example": 96,
"readOnly": true,
"description": "The identifier for an action."
},
"journey_id": {
"type": "string",
"example": "01GW20GXAAXBKZD8J96M8FNV3R",
"description": "The ID for the path a person went through in a Campaign or API Triggered Broadcast workflow."
},
"campaign_id": {
"type": "integer",
"example": 5,
"nullable": true,
"description": "The identifier for a campaign."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"parent_action_id": {
"type": "integer",
"example": 1,
"readOnly": true,
"description": "The ID of the parent action, if the action occurred within a campaign and has a parent (like a randomized split, etc)."
},
"trigger_event_id": {
"type": "string",
"example": "21E4C3CT6YDC7Y4N7FE1GWWABC",
"nullable": true,
"description": "The id of the event that triggered an event-triggered campaign (not an API-triggered broadcast)."
}
}
},
{
"type": "object",
"title": "Newsletter",
"required": [
"newsletter_id",
"delivery_id",
"identifiers"
],
"properties": {
"content_id": {
"type": "integer",
"example": 3,
"description": "The identifier for a newsletter variant."
},
"customer_id": {
"type": "string",
"example": "42",
"deprecated": true,
"description": "The ID of the person the webhook event occurred to. Blank if the person in question has been deleted.\n\nWhile webhooks may still contain this property, you should rely on the newer `identifiers` object wherever possible.\n"
},
"delivery_id": {
"type": "string",
"example": "ZAIAAVTJVG0QcCok0-0ZKj6yiQ==",
"description": "The instance of a message sent to a person."
},
"identifiers": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "42",
"nullable": true,
"description": "The ID of a customer profile, analogous to a \"person\" in the UI. If your workspace supports multiple identifiers (email and ID), this value can be null."
},
"email": {
"type": "string",
"example": "test@example.com",
"nullable": true,
"description": "The email address of the customer."
},
"cio_id": {
"type": "string",
"example": "d9c106000001",
"description": "The canonical identifier for a person, present only if your workspace supports multiple identifiers (email and ID). This value exists to keep a record of a person in your workspace across changes to their other identifiers."
}
},
"description": "The person the event represents. This object contains all of the identifiers available to people in your workspace, even if they aren't set. If your workspace supports multiple identifiers (email and ID), this object contains `id`, `email` (either of which can be null), and `cio_id`. \n\nOtherwise, if your workspace only supports ID, this object just contains the `id` of the person the event represents.\n"
},
"newsletter_id": {
"type": "integer",
"example": 10,
"nullable": true,
"description": "The identifier for a newsletter."
}
}
}
]
},
{
"type": "object",
"required": [
"failure_message"
],
"properties": {
"failure_message": {
"type": "string",
"example": "Something went wrong!",
"description": "Indicates the reason that an attempted message failed."
}
}
}
],
"description": "Contains information about the event, specific to the `object_type` and `metric`."
},
"metric": {
"enum": [
"undeliverable"
],
"type": "string",
"description": "A message was undeliverable. Undeliverable messages are messages that have either hit a message limit, come from a newsletter that was cancelled or deleted, or an environment that has delivery disabled (which is something you might do if you’re testing an integration). If you’re not using message limits, you probably won’t see this event."
}
}
}
],
"title": "failed"
}
snippet
{
"type": "object",
"example": {
"name": "address",
"value": "<strong>My Company</strong></br>1234 Fake St<br/>Fake,NY<br/>10111",
"updated_at": 1582500000
},
"required": [
"name",
"value"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the snippet, must be unique."
},
"value": {
"type": "string",
"description": "The contents of the snippet."
},
"updated_at": {
"type": "integer",
"format": "unix timestamp",
"readOnly": true,
"description": "The last date-time the snippet was updated."
}
},
"description": "describes a piece of reusable content. You must provide a name for the snippet and the `value`—the content that appears in messages that use the snippet."
}