Contacthub API (1.300.0)
Download OpenAPI specification:Download
The Contacthub API allows you to collect, store, update and export the digital data of your customers.
Number of customer events by category
Counts the number of events aggregated by category for a customer. The default date range is the last year and the default resolution mode is DAILY.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
customerId required | string <uuid> The unique identifier of the customer. |
query Parameters
start | string <date-time> Start date. |
end | string <date-time> End date. |
mode | string Enum: "DAILY" "WEEKLY" "MONTHLY" The distribution mode. limitation date range:
|
Responses
Response samples
- 200
{- "parameters": {
- "start": "2019-08-24T14:15:22Z",
- "end": "2019-08-24T14:15:22Z",
- "mode": "DAILY"
}, - "data": [
- {
- "category": "string",
- "type": "string",
- "values": [
- {
- "datetime": "2019-08-24",
- "value": "string"
}
]
}
]
}
Customer buying behaviors
Gets the customer buying behavior counters. The default date range is the last year.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
customerId required | string <uuid> The unique identifier of the customer. |
query Parameters
start | string <date-time> Start date. |
end | string <date-time> End date. |
Responses
Response samples
- 200
{- "parameters": {
- "start": "2019-08-24T14:15:22Z",
- "end": "2019-08-24T14:15:22Z"
}, - "data": [
- {
- "name": "totalSpending",
- "type": "currency",
- "currency": "string",
- "value": "string",
- "total": "string",
- "revenue": "string"
}
]
}
Workspace information and total number of customers
Gets workspace information and total number of customers
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Responses
Response samples
- 200
{- "id": "string",
- "name": "string",
- "status": "string",
- "customers": 0
}
Nodes information and total number of customers
Gets nodes information and total number of customers
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Responses
Response samples
- 200
{- "elements": [
- {
- "id": "string",
- "name": "string",
- "type": "ENTRY",
- "customers": 0,
- "plan": true,
- "send": {
- "groupPk": 0,
- "userDbId": 0
}
}
], - "page": {
- "size": 50,
- "totalElements": 0,
- "totalPages": 0,
- "number": 0,
- "maxElements": 0,
- "maxPages": 0
}
}
Number of customers
Counts the total number of customers.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
query Parameters
nodeId | string <uuid> Filter the entities belonging to this node id. |
Responses
Response samples
- 200
{- "parameters": {
- "nodeId": "959356e3-6168-4a92-b4a5-b9d462be6177"
}, - "data": {
- "category": "CustomersSnapshot",
- "type": "keyValue",
- "values": [
- {
- "key": "total",
- "value": 42
}
]
}
}
Number of customers by creation date
Counts the number of customers aggregate by registeredAt. The default date range is the last year and the default resolution mode is MONTHLY.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
query Parameters
start | string <date-time> Start date. |
end | string <date-time> End date. |
mode | string Enum: "DAILY" "WEEKLY" "MONTHLY" The distribution mode. limitation date range:
|
nodeId | string <uuid> Filter the entities belonging to this node id. |
Responses
Response samples
- 200
{- "parameters": {
- "start": "2019-08-24T14:15:22Z",
- "end": "2019-08-24T14:15:22Z",
- "mode": "DAILY",
- "nodeId": "959356e3-6168-4a92-b4a5-b9d462be6177"
}, - "data": [
- {
- "category": "addedCustomers",
- "type": "timeseries",
- "values": [
- {
- "datetime": "2019-08-24",
- "value": 42
}
]
}
]
}
Number of customers by available communication channels
Counts the number of customers by the available communication channels: email and mobile, email only, mobile only, not reachable.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
query Parameters
nodeId | string <uuid> Filter the entities belonging to this node id. |
Responses
Response samples
- 200
{- "parameters": {
- "nodeId": "uuid"
}, - "data": {
- "category": "communicationChannels",
- "type": "keyValue",
- "values": [
- {
- "key": "emailMobile",
- "value": "10"
}, - {
- "key": "emailOnly",
- "value": "100"
}, - {
- "key": "mobileOnly",
- "value": "5"
}, - {
- "key": "notReachable",
- "value": "12"
}
]
}
}
Number of customers by update date
New customers added/changed/deleted in the date range. The default date range is the last month, and the max date range is 1 year for (1 month for deleted customers)
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
query Parameters
start | string <date-time> Start date. |
end | string <date-time> End date. |
type | string Default: "ADDED" Enum: "ADDED" "UPDATED" "DELETED" Specifies the type of aggregation (ADDED, UPDATED, DELETED). |
nodeId | string <uuid> Filter the entities belonging to this node id. |
Responses
Response samples
- 200
{- "parameters": {
- "start": "2019-08-24T14:15:22Z",
- "end": "2019-08-24T14:15:22Z",
- "nodeId": "959356e3-6168-4a92-b4a5-b9d462be6177",
- "type": "ADDED"
}, - "data": [
- {
- "category": "customers",
- "type": "timeseries",
- "values": [
- {
- "datetime": "2019-08-24",
- "value": 42
}
]
}
]
}
Number of events by update date
New events added/changed/deleted in the date range. The default date range is the last month, and the max date range is 1 year (1 month for deleted events).
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
query Parameters
start | string <date-time> Start date. |
end | string <date-time> End date. |
type | string Default: "ADDED" Enum: "ADDED" "UPDATED" "DELETED" Specifies the type of aggregation (ADDED, UPDATED, DELETED). |
nodeId | string <uuid> Filter the entities belonging to this node id. |
Responses
Response samples
- 200
{- "parameters": {
- "start": "2019-08-24T14:15:22Z",
- "end": "2019-08-24T14:15:22Z",
- "nodeId": "959356e3-6168-4a92-b4a5-b9d462be6177",
- "type": "ADDED"
}, - "data": [
- {
- "category": "completedOrder",
- "type": "timeseries",
- "values": [
- {
- "datetime": "2019-08-24",
- "value": 42
}
]
}
]
}
Number of events by type and context
Events in the date range aggregated by type and context. Field 'date' of the event is used to filtered and aggregate events. The default date range is the last month, and the max date range is 1 year.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
query Parameters
start | string <date-time> Start date. |
end | string <date-time> End date. |
context | string Default: "ALL" Enum: "WEB" "MOBILE" "ECOMMERCE" "RETAIL" "SOCIAL" "DIGITAL_CAMPAIGN" "CONTACT_CENTER" "IOT" "OTHER" "ALL" Specifies the context. |
nodeId | string <uuid> Filter the entities belonging to this node id. |
Responses
Response samples
- 200
{- "parameters": {
- "start": "2019-08-24T14:15:22Z",
- "end": "2019-08-24T14:15:22Z",
- "nodeId": "959356e3-6168-4a92-b4a5-b9d462be6177",
- "context": "WEB"
}, - "data": [
- {
- "category": "completedOrder",
- "context": "ECOMMERCE",
- "type": "timeseries",
- "values": [
- {
- "datetime": "2019-08-24",
- "value": 42
}
]
}
]
}
Events Kpi Purchases
Events Kpi Purchases. Field 'date' of the event is used to filtered and aggregate events. The default date range is the last month.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
query Parameters
start | string <date-time> Start date. |
end | string <date-time> End date. |
type | string Default: "ALL" Enum: "ECOMMERCE" "RETAIL" "ALL" Specifies kpi purchases type. |
nodeId | string <uuid> Filter the entities belonging to this node id. |
Responses
Response samples
- 200
{- "parameters": {
- "start": "2019-08-24T14:15:22Z",
- "end": "2019-08-24T14:15:22Z",
- "nodeId": "959356e3-6168-4a92-b4a5-b9d462be6177",
- "type": "ECOMMERCE"
}, - "data": [
- {
- "name": "totalRevenue",
- "type": "currency",
- "currency": "string",
- "value": "string",
- "total": "string"
}
]
}
Events Kpi Ecommerce
Events Kpi Ecommerce. Field 'date' of the event is used to filtered and aggregate events. The default date range is the last month.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
query Parameters
start | string <date-time> Start date. |
end | string <date-time> End date. |
nodeId | string <uuid> Filter the entities belonging to this node id. |
Responses
Response samples
- 200
{- "parameters": {
- "start": "2019-08-24T14:15:22Z",
- "end": "2019-08-24T14:15:22Z"
}, - "data": [
- {
- "name": "totalSales",
- "type": "currency",
- "currency": "string",
- "value": "string",
- "total": "string"
}
]
}
Events Kpi Web
Events Kpi Web. Field 'date' of the event is used to filtered and aggregate events. The default date range is the last month.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
query Parameters
start | string <date-time> Start date. |
end | string <date-time> End date. |
nodeId | string <uuid> Filter the entities belonging to this node id. |
Responses
Response samples
- 200
{- "parameters": {
- "start": "2019-08-24T14:15:22Z",
- "end": "2019-08-24T14:15:22Z",
- "nodeId": "959356e3-6168-4a92-b4a5-b9d462be6177"
}, - "data": [
- {
- "name": "pageViews",
- "category": "eventsKPI",
- "type": "keyValue",
- "values": [
- {
- "key": "pageViews",
- "value": 42
}
]
}
]
}
Get bulk jobs per node
Gets the list of bulk jobs filtered by node id. Can also be filtered by status and entity type.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
nodeId required | string <uuid> The unique identifier of the entry node. |
query Parameters
status | string (BulkJobStatus) Enum: "LOADED" "SCHEDULED" "PROCESSING" "STOPPED" "PROCESSED" "FAILED" Example: status=LOADED Job status to search for |
entity | string (BulkJobEntity) Enum: "CUSTOMER" "EVENT" Example: entity=CUSTOMER Job entity type to search for |
size | integer Size of the response. |
sort | string Sorting of the response. |
page | integer Page of the response. |
Responses
Response samples
- 200
{- "page": {
- "size": 50,
- "totalElements": 0,
- "totalPages": 0,
- "number": 0,
- "maxElements": 0,
- "maxPages": 0
}, - "elements": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "filename": "string",
- "operation": "UPSERT",
- "workspaceId": "string",
- "nodeId": "string",
- "entity": "CUSTOMER",
- "eventType": "abandonedCart",
- "bulkJobName": "string",
- "status": "LOADED",
- "errorMessage": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "processedEntities": 0,
- "failedEntities": 0,
- "totalEntities": 0
}
]
}
Create a bulk job
Creates new bulk job resource and uploads the input file from which the bulk job will retrieve the data. The job status will be LOADED or FAILED based on the result of the file upload. A maximum of 10 jobs with status LOADED can exist for each node.
Please note that entities are not guaranteed to be created in the same order as they are in the file.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
nodeId required | string <uuid> The unique identifier of the entry node. |
Request Body schema: multipart/form-data
file required | string <binary> CSV file data. |
operation required | string (BulkJobOperation) Enum: "UPSERT" "INSERT" "DELETE" The bulk job operation mode. |
entity | string (BulkJobEntity) Enum: "CUSTOMER" "EVENT" The entity type of the bulk job. |
eventType | string (EventType) Enum: "abandonedCart" "abandonedSession" "addedCompare" "addedProduct" "addedReward" "addedWishlist" "campaignBlacklisted" "campaignBounced" "campaignLinkClicked" "campaignMarkedSpam" "campaignOpened" "campaignOptinRequested" "campaignSent" "campaignSubscribed" "campaignUnsubscribed" "changedSetting" "clickedLink" "closedTicket" "completedOrder" "eventConfirmed" "eventDeclined" "eventEligible" "eventInvited" "eventNoShow" "eventNotInvited" "eventParticipated" "eventRegistered" "formCompiled" "genericActiveEvent" "genericPassiveEvent" "grantedCoupon" "loggedIn" "loggedOut" "openedTicket" "orderShipped" "removedCompare" "removedProduct" "removedReward" "removedWishlist" "repliedTicket" "reviewedProduct" "searched" "serviceSubscribed" "serviceUnsubscribed" "surveyCompiled" "viewedPage" "viewedProduct" "viewedProductCategory" Type of the target event/s (immutable). |
Responses
Request samples
- Payload
externalId,base.firstName,base.contacts.email 100,John,Doe@example.com
Response samples
- 201
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "filename": "string",
- "operation": "UPSERT",
- "workspaceId": "string",
- "nodeId": "string",
- "entity": "CUSTOMER",
- "eventType": "abandonedCart",
- "bulkJobName": "string",
- "status": "LOADED",
- "errorMessage": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "processedEntities": 0,
- "failedEntities": 0,
- "totalEntities": 0
}
Get a single bulk job
Gets a bulk job by id.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
nodeId required | string <uuid> The unique identifier of the entry node. |
jobId required | string <uuid> The unique identifier of the job |
Responses
Response samples
- 200
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "filename": "string",
- "operation": "UPSERT",
- "workspaceId": "string",
- "nodeId": "string",
- "entity": "CUSTOMER",
- "eventType": "abandonedCart",
- "bulkJobName": "string",
- "status": "LOADED",
- "errorMessage": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "processedEntities": 0,
- "failedEntities": 0,
- "totalEntities": 0
}
Get bulk job results
Gets bulk job results in .csv format; can be accessed only when a job is either PROCESSED or FAILED.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
nodeId required | string <uuid> The unique identifier of the entry node. |
jobId required | string <uuid> The unique identifier of the job |
Responses
Get workspace configuration
Gets the workspace configuration.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Responses
Response samples
- 200
{- "name": "string",
- "industry": "GDO",
- "timezone": "Europe/Rome",
- "currency": "EUR",
- "customerUniquenessPolicy": "MERGE",
- "tier": null
}
Modify workspace configuration
Modifies the workspace configuration.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Request Body schema: application/jsonrequired
Object necessary to modify the workspace configuration.
name | string Name of workspace. |
industry | string Default: "NotDefined" Enum: "GDO" "Luxury" "Automotive" "NotDefined" Industry of workspace. |
logo | string or null <uri> Url of workspace logo. |
timezone | string or null (Timezone) Default: "Europe/Rome" Enum: "Europe/Rome" "Europe/Paris" "Europe/London" Default timezone of workspace. |
currency | string Default: "EUR" Enum: "EUR" "USD" "JPY" Default currency of workspace. |
customerUniquenessPolicy | string or null Default: "MERGE" Value: "MERGE" [Deprecated]: the only value accepted is MERGE |
Responses
Request samples
- Payload
{- "name": "string",
- "industry": "GDO",
- "timezone": "Europe/Rome",
- "currency": "EUR",
- "customerUniquenessPolicy": "MERGE"
}
Response samples
- 200
{- "name": "string",
- "industry": "GDO",
- "timezone": "Europe/Rome",
- "currency": "EUR",
- "customerUniquenessPolicy": "MERGE",
- "tier": null
}
Get the workspace throttling
Gets the workspace throttling configuration. The value 0 (zero) means that throttling is disabled.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Responses
Response samples
- 200
{- "maxRequestsPerMinute": 0
}
Modify the workspace throttling
Modifies the workspace throttling configuration. The value 0 (zero) means that throttling is disabled.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Request Body schema: application/jsonrequired
Object necessary to modify the workspace throttling configuration.
maxRequestsPerMinute | integer >= 0 max requests per minute for workspace. |
Responses
Request samples
- Payload
{- "maxRequestsPerMinute": 0
}
Response samples
- 200
{- "maxRequestsPerMinute": 0
}
List event configurations
Gets the list of the built-in event configurations.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
query Parameters
resolveReferences | boolean Whether to resolve references or not. |
Responses
Response samples
- 200
{- "elements": [
- {
- "id": "abandonedCart",
- "type": "abandonedCart",
- "mode": "ACTIVE",
- "label": "string",
- "description": "string",
- "propertiesSchema": { },
- "enabled": true
}
], - "page": {
- "size": 50,
- "totalElements": 0,
- "totalPages": 0,
- "number": 0
}
}
Get event configuration
Gets the details of a built-in event.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
eventType required | string (EventType) Enum: "abandonedCart" "abandonedSession" "addedCompare" "addedProduct" "addedReward" "addedWishlist" "campaignBlacklisted" "campaignBounced" "campaignLinkClicked" "campaignMarkedSpam" "campaignOpened" "campaignOptinRequested" "campaignSent" "campaignSubscribed" "campaignUnsubscribed" "changedSetting" "clickedLink" "closedTicket" "completedOrder" "eventConfirmed" "eventDeclined" "eventEligible" "eventInvited" "eventNoShow" "eventNotInvited" "eventParticipated" "eventRegistered" "formCompiled" "genericActiveEvent" "genericPassiveEvent" "grantedCoupon" "loggedIn" "loggedOut" "openedTicket" "orderShipped" "removedCompare" "removedProduct" "removedReward" "removedWishlist" "repliedTicket" "reviewedProduct" "searched" "serviceSubscribed" "serviceUnsubscribed" "surveyCompiled" "viewedPage" "viewedProduct" "viewedProductCategory" The name of event type. |
query Parameters
resolveReferences | boolean Whether to resolve references or not. |
Responses
Response samples
- 200
{- "id": "abandonedCart",
- "type": "abandonedCart",
- "mode": "ACTIVE",
- "label": "string",
- "description": "string",
- "propertiesSchema": { },
- "enabled": true
}
Modify event configuration
Enables or disables a built-in event. This endpoint is deprecated. Please use /workspaces/{workspaceId}/configuration/events/{eventType}/enabled.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
eventType required | string (EventType) Enum: "abandonedCart" "abandonedSession" "addedCompare" "addedProduct" "addedReward" "addedWishlist" "campaignBlacklisted" "campaignBounced" "campaignLinkClicked" "campaignMarkedSpam" "campaignOpened" "campaignOptinRequested" "campaignSent" "campaignSubscribed" "campaignUnsubscribed" "changedSetting" "clickedLink" "closedTicket" "completedOrder" "eventConfirmed" "eventDeclined" "eventEligible" "eventInvited" "eventNoShow" "eventNotInvited" "eventParticipated" "eventRegistered" "formCompiled" "genericActiveEvent" "genericPassiveEvent" "grantedCoupon" "loggedIn" "loggedOut" "openedTicket" "orderShipped" "removedCompare" "removedProduct" "removedReward" "removedWishlist" "repliedTicket" "reviewedProduct" "searched" "serviceSubscribed" "serviceUnsubscribed" "surveyCompiled" "viewedPage" "viewedProduct" "viewedProductCategory" The name of event type. |
query Parameters
resolveReferences | boolean Whether to resolve references or not. |
Request Body schema: application/jsonrequired
Event object for enable or disable.
id | string (EventType) Enum: "abandonedCart" "abandonedSession" "addedCompare" "addedProduct" "addedReward" "addedWishlist" "campaignBlacklisted" "campaignBounced" "campaignLinkClicked" "campaignMarkedSpam" "campaignOpened" "campaignOptinRequested" "campaignSent" "campaignSubscribed" "campaignUnsubscribed" "changedSetting" "clickedLink" "closedTicket" "completedOrder" "eventConfirmed" "eventDeclined" "eventEligible" "eventInvited" "eventNoShow" "eventNotInvited" "eventParticipated" "eventRegistered" "formCompiled" "genericActiveEvent" "genericPassiveEvent" "grantedCoupon" "loggedIn" "loggedOut" "openedTicket" "orderShipped" "removedCompare" "removedProduct" "removedReward" "removedWishlist" "repliedTicket" "reviewedProduct" "searched" "serviceSubscribed" "serviceUnsubscribed" "surveyCompiled" "viewedPage" "viewedProduct" "viewedProductCategory" Type of the target event/s (immutable). |
type | string (EventType) Enum: "abandonedCart" "abandonedSession" "addedCompare" "addedProduct" "addedReward" "addedWishlist" "campaignBlacklisted" "campaignBounced" "campaignLinkClicked" "campaignMarkedSpam" "campaignOpened" "campaignOptinRequested" "campaignSent" "campaignSubscribed" "campaignUnsubscribed" "changedSetting" "clickedLink" "closedTicket" "completedOrder" "eventConfirmed" "eventDeclined" "eventEligible" "eventInvited" "eventNoShow" "eventNotInvited" "eventParticipated" "eventRegistered" "formCompiled" "genericActiveEvent" "genericPassiveEvent" "grantedCoupon" "loggedIn" "loggedOut" "openedTicket" "orderShipped" "removedCompare" "removedProduct" "removedReward" "removedWishlist" "repliedTicket" "reviewedProduct" "searched" "serviceSubscribed" "serviceUnsubscribed" "surveyCompiled" "viewedPage" "viewedProduct" "viewedProductCategory" Type of the target event/s (immutable). |
enabled | boolean Default: true Flag for enable-disable event. |
Responses
Request samples
- Payload
{- "id": "abandonedCart",
- "type": "abandonedCart",
- "enabled": true
}
Response samples
- 200
{- "id": "abandonedCart",
- "type": "abandonedCart",
- "mode": "ACTIVE",
- "label": "string",
- "description": "string",
- "propertiesSchema": { },
- "enabled": true
}
Get event properties
Gets the event type properties.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
eventType required | string (EventType) Enum: "abandonedCart" "abandonedSession" "addedCompare" "addedProduct" "addedReward" "addedWishlist" "campaignBlacklisted" "campaignBounced" "campaignLinkClicked" "campaignMarkedSpam" "campaignOpened" "campaignOptinRequested" "campaignSent" "campaignSubscribed" "campaignUnsubscribed" "changedSetting" "clickedLink" "closedTicket" "completedOrder" "eventConfirmed" "eventDeclined" "eventEligible" "eventInvited" "eventNoShow" "eventNotInvited" "eventParticipated" "eventRegistered" "formCompiled" "genericActiveEvent" "genericPassiveEvent" "grantedCoupon" "loggedIn" "loggedOut" "openedTicket" "orderShipped" "removedCompare" "removedProduct" "removedReward" "removedWishlist" "repliedTicket" "reviewedProduct" "searched" "serviceSubscribed" "serviceUnsubscribed" "surveyCompiled" "viewedPage" "viewedProduct" "viewedProductCategory" The name of event type. |
query Parameters
resolveReferences | boolean Whether to resolve references or not. |
Responses
Response samples
- 200
{ }
Get event extended properties
Gets the event type extended properties.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
eventType required | string (EventType) Enum: "abandonedCart" "abandonedSession" "addedCompare" "addedProduct" "addedReward" "addedWishlist" "campaignBlacklisted" "campaignBounced" "campaignLinkClicked" "campaignMarkedSpam" "campaignOpened" "campaignOptinRequested" "campaignSent" "campaignSubscribed" "campaignUnsubscribed" "changedSetting" "clickedLink" "closedTicket" "completedOrder" "eventConfirmed" "eventDeclined" "eventEligible" "eventInvited" "eventNoShow" "eventNotInvited" "eventParticipated" "eventRegistered" "formCompiled" "genericActiveEvent" "genericPassiveEvent" "grantedCoupon" "loggedIn" "loggedOut" "openedTicket" "orderShipped" "removedCompare" "removedProduct" "removedReward" "removedWishlist" "repliedTicket" "reviewedProduct" "searched" "serviceSubscribed" "serviceUnsubscribed" "surveyCompiled" "viewedPage" "viewedProduct" "viewedProductCategory" The name of event type. |
Responses
Response samples
- 200
{- "property1": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}, - "property2": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}
}
Modify event extended properties
Modifies an event type extended properties.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
eventType required | string (EventType) Enum: "abandonedCart" "abandonedSession" "addedCompare" "addedProduct" "addedReward" "addedWishlist" "campaignBlacklisted" "campaignBounced" "campaignLinkClicked" "campaignMarkedSpam" "campaignOpened" "campaignOptinRequested" "campaignSent" "campaignSubscribed" "campaignUnsubscribed" "changedSetting" "clickedLink" "closedTicket" "completedOrder" "eventConfirmed" "eventDeclined" "eventEligible" "eventInvited" "eventNoShow" "eventNotInvited" "eventParticipated" "eventRegistered" "formCompiled" "genericActiveEvent" "genericPassiveEvent" "grantedCoupon" "loggedIn" "loggedOut" "openedTicket" "orderShipped" "removedCompare" "removedProduct" "removedReward" "removedWishlist" "repliedTicket" "reviewedProduct" "searched" "serviceSubscribed" "serviceUnsubscribed" "surveyCompiled" "viewedPage" "viewedProduct" "viewedProductCategory" The name of event type. |
Request Body schema: application/jsonrequired
The json schema that defines the extended profile.
Each json schema property can include the following custom property: label, enabled, indexed and mergePolicy.
Property indexed
can only be changed by users with role CLAB_OPERATOR
.
In property names it is not possible to use "." (e.g. "my.property")
additional property | (object or object or object or object) or (object or object) or (object or object) or (object or object) | ||||
One of One of
|
Responses
Request samples
- Payload
{- "property1": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}, - "property2": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}
}
Response samples
- 200
- 400
{- "property1": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}, - "property2": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}
}
Modify event state
Enables or disables a built-in event type.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
eventType required | string (EventType) Enum: "abandonedCart" "abandonedSession" "addedCompare" "addedProduct" "addedReward" "addedWishlist" "campaignBlacklisted" "campaignBounced" "campaignLinkClicked" "campaignMarkedSpam" "campaignOpened" "campaignOptinRequested" "campaignSent" "campaignSubscribed" "campaignUnsubscribed" "changedSetting" "clickedLink" "closedTicket" "completedOrder" "eventConfirmed" "eventDeclined" "eventEligible" "eventInvited" "eventNoShow" "eventNotInvited" "eventParticipated" "eventRegistered" "formCompiled" "genericActiveEvent" "genericPassiveEvent" "grantedCoupon" "loggedIn" "loggedOut" "openedTicket" "orderShipped" "removedCompare" "removedProduct" "removedReward" "removedWishlist" "repliedTicket" "reviewedProduct" "searched" "serviceSubscribed" "serviceUnsubscribed" "surveyCompiled" "viewedPage" "viewedProduct" "viewedProductCategory" The name of event type. |
Request Body schema: application/jsonrequired
The value of the state.
value | boolean True to enable the property, False to disable the property. |
Responses
Request samples
- Payload
{- "value": true
}
Response samples
- 200
{- "value": true
}
Get configured event types for products update policy
Gets configured event types that updates products registry
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Responses
Response samples
- 200
{- "eventTypes": [
- "completedOrder"
]
}
Modify configured event types for products update policy
Modifies configured event types that updates products registry
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Request Body schema: application/jsonrequired
list of event types.
eventTypes | Array of strings or null (ProductAwareEventType) Enum: "completedOrder" "abandonedCart" "addedCompare" "addedProduct" "addedWishlist" "removedCompare" "removedProduct" "removedWishlist" "viewedProduct" "reviewedProduct" set of event types |
Responses
Request samples
- Payload
{- "eventTypes": [
- "completedOrder"
]
}
Response samples
- 200
- 400
{- "eventTypes": [
- "completedOrder"
]
}
Get plan model
Gets the available custom fields and the extended properties of the given plan model.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
planModel required | string (PlanModel) Enum: "ABANDONED_CART" "ATTENDANCE_EVENT" "COUPON" "ORDER" "ORDER_LINE" "PRODUCT_INTERACTION" "SERVICE_SUBSCRIBED" "SERVICE_UNSUBSCRIBED" "WEB_BROWSING_EVENT" The model of event which is exported to plan. |
Responses
Response samples
- 200
{- "plan": [
- {
- "name": "string",
- "type": "STRING"
}
], - "hub": {
- "event": [
- {
- "name": "string",
- "type": "string",
- "format": "string",
- "contactlabProperties": {
- "label": "string"
}
}
], - "product": [
- {
- "name": "string",
- "type": "string",
- "format": "string",
- "contactlabProperties": {
- "label": "string"
}
}
]
}
}
Get product extended properties
Gets the product extended properties.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Responses
Response samples
- 200
{- "property1": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}, - "property2": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}
}
Modify product extended properties
Modifies the product extended properties.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Request Body schema: application/jsonrequired
The json schema that defines the extended profile.
Each json schema property can include the following custom property: label, enabled, indexed and mergePolicy.
Property indexed
can only be changed by users with role CLAB_OPERATOR
.
In property names it is not possible to use "." (e.g. "my.property")
additional property | (object or object or object or object) or (object or object) or (object or object) or (object or object) | ||||
One of One of
|
Responses
Request samples
- Payload
{- "property1": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}, - "property2": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}
}
Response samples
- 200
{- "property1": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}, - "property2": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}
}
Get workspace retention policy status
Gets the retention policy status for a workspace.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Responses
Response samples
- 200
{- "property1": {
- "property1": {
- "months": 0,
- "total": 0,
- "valid": 0,
- "expired": 0,
- "oldestDate": "2019-08-24T14:15:22Z"
}, - "property2": {
- "months": 0,
- "total": 0,
- "valid": 0,
- "expired": 0,
- "oldestDate": "2019-08-24T14:15:22Z"
}
}, - "property2": {
- "property1": {
- "months": 0,
- "total": 0,
- "valid": 0,
- "expired": 0,
- "oldestDate": "2019-08-24T14:15:22Z"
}, - "property2": {
- "months": 0,
- "total": 0,
- "valid": 0,
- "expired": 0,
- "oldestDate": "2019-08-24T14:15:22Z"
}
}
}
Get workspace retention policy
Gets the retention policy for each built-in event of a specific workspace.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Responses
Response samples
- 200
{- "property1": {
- "months": 0
}, - "property2": {
- "months": 0
}
}
Modify workspace retention policy
Configures the retention policy for each built-in event of a specific workspace.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Request Body schema: application/jsonrequired
The retention policy for each built-in event.
additional property | object (EventRetentionPolicy) | ||
|
Responses
Request samples
- Payload
{- "property1": {
- "months": 0
}, - "property2": {
- "months": 0
}
}
Response samples
- 200
{- "property1": {
- "months": 0
}, - "property2": {
- "months": 0
}
}
Modify workspace events consent policy
Modifies the workspace events consent policy.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Request Body schema: application/jsonrequired
The consent policy for each built-in event.
property name* additional property | Array of strings Type of event which the consent policy is added to. |
Responses
Request samples
- Payload
{- "property1": [
- "string"
], - "property2": [
- "string"
]
}
Response samples
- 200
{- "property1": [
- "string"
], - "property2": [
- "string"
]
}
Get workspace events payload size
Gets the workspace events payload size.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Responses
Response samples
- 200
{- "property1": {
- "maxBytes": 65535
}, - "property2": {
- "maxBytes": 65535
}
}
Modify workspace events payload size
Modifies the workspace events payload size.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Request Body schema: application/jsonrequired
The payload size for each built-in event.
additional property | object | ||
|
Responses
Request samples
- Payload
{- "property1": {
- "maxBytes": 65535
}, - "property2": {
- "maxBytes": 65535
}
}
Response samples
- 200
{- "property1": {
- "maxBytes": 65535
}, - "property2": {
- "maxBytes": 65535
}
}
List nodes
Gets a paged list of the nodes.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
query Parameters
page | integer [ 0 .. 50 ] Default: 0 Paging: the page number. |
size | integer [ 0 .. 50 ] Default: 20 Paging: the page size. |
nodeType | string Enum: "ENTRY" "AGGREGATE" The type of the node. |
Responses
Response samples
- 200
{- "page": {
- "size": 10,
- "totalElements": 1,
- "totalPages": 1,
- "number": 0
}, - "elements": [
- {
- "id": "9e9021ae-5332-426d-bb1b-f053440d7b4c",
- "name": "Node 1",
- "description": "This is Node 1.",
- "nodeType": "ENTRY",
- "retentionState": true,
- "properties": {
- "uniqueCustomer": {
- "caseSensitive": false,
- "properties": [
- "externalId"
]
}, - "mandatoryProperties": [
- "base.contacts.email"
]
}
}, - {
- "id": "37bb932c-3e80-479b-a813-c6f9b3926a90",
- "name": "Aggregate Node A",
- "description": "This is Aggregate Node A.",
- "nodeType": "AGGREGATE",
- "retentionState": true,
- "properties": {
- "state": "ACTIVE",
- "entryNodes": [
- "9e9021ae-5332-426d-bb1b-f053440d7b4c"
], - "exclusionFilters": [ ],
- "matchingProperties": {
- "properties": [
- "base.contacts.email"
], - "caseSensitive": false
}
}
}
]
}
Get node retention policy
Gets the retention policy for each built-in event of a specific node (entry or aggregate).
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
nodeId required | string <uuid> The unique identifier of the node (entry or aggregate). |
Responses
Response samples
- 200
{- "enabled": true,
- "events": {
- "property1": {
- "months": 0
}, - "property2": {
- "months": 0
}
}
}
Modify node retention policy
Configures the retention policy for each built-in event for a specific node (entry or aggregate).
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
nodeId required | string <uuid> The unique identifier of entry node (entry or aggregate). |
Request Body schema: application/jsonrequired
The retention policy for each built-in event.
enabled | boolean Events retention policy state. |
object (RetentionPolicyByEvent) a map by event id of the retention status for every event of the workspace EXAMPLE
|
Responses
Request samples
- Payload
{- "enabled": true,
- "events": {
- "property1": {
- "months": 0
}, - "property2": {
- "months": 0
}
}
}
Response samples
- 200
{- "enabled": true,
- "events": {
- "property1": {
- "months": 0
}, - "property2": {
- "months": 0
}
}
}
List entry nodes
Gets a paged list of the entries node.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
query Parameters
page | integer [ 0 .. 50 ] Default: 0 Paging: the page number. |
size | integer [ 0 .. 50 ] Default: 20 Paging: the page size. |
Responses
Response samples
- 200
{- "page": {
- "size": 10,
- "totalElements": 1,
- "totalPages": 1,
- "number": 0
}, - "elements": [
- {
- "id": "be4f0058-c51e-4909-acdc-373dfba102bd",
- "name": "Node 1",
- "description": "This is Node 1.",
- "uniqueCustomer": {
- "caseSensitive": true,
- "properties": [
- "string"
]
}, - "mandatoryProperties": [
- "base.contacts.email"
], - "sourcePriority": [ ]
}
]
}
Create entry node
Creates a new entry node.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Request Body schema: application/jsonrequired
The entry node object.
name required | string The name of entry node. |
description | string or null The description of entry node. |
imageUrl | string or null <uri> The url of logo. |
object (UniqueCustomer) | |
sourcePriority | Array of strings <uuid> [ items <uuid > ] Array of source |
mandatoryProperties | Array of strings Array of mandatory properties. |
Responses
Request samples
- Payload
{- "name": "string",
- "description": "string",
- "uniqueCustomer": {
- "caseSensitive": true,
- "properties": [
- "string"
]
}, - "sourcePriority": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "mandatoryProperties": [
- "string"
]
}
Response samples
- 201
{- "name": "string",
- "description": "string",
- "uniqueCustomer": {
- "caseSensitive": true,
- "properties": [
- "string"
]
}, - "sourcePriority": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "mandatoryProperties": [
- "string"
], - "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
Get entry node
Gets the details of a specific entry node.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
nodeId required | string <uuid> The unique identifier of the entry node. |
Responses
Response samples
- 200
{- "name": "string",
- "description": "string",
- "uniqueCustomer": {
- "caseSensitive": true,
- "properties": [
- "string"
]
}, - "sourcePriority": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "mandatoryProperties": [
- "string"
], - "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
Modify entry node
Modifies a specific entry node.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
nodeId required | string <uuid> The unique identifier of the entry node. |
Request Body schema: application/jsonrequired
The entry node object.
id required | string <uuid> The identifier of entry node. |
name required | string The name of entry node. |
description | string or null The description of entry node. |
imageUrl | string or null <uri> The url of logo. |
required | object (UniqueCustomer) |
sourcePriority | Array of strings <uuid> [ items <uuid > ] Array of source |
mandatoryProperties | Array of strings Array of mandatory properties. |
Responses
Request samples
- Payload
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "description": "string",
- "uniqueCustomer": {
- "caseSensitive": true,
- "properties": [
- "string"
]
}, - "sourcePriority": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "mandatoryProperties": [
- "string"
]
}
Response samples
- 200
{- "name": "string",
- "description": "string",
- "uniqueCustomer": {
- "caseSensitive": true,
- "properties": [
- "string"
]
}, - "sourcePriority": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "mandatoryProperties": [
- "string"
], - "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
Empty entry node
Removes all the data in a specific entry node.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
nodeId required | string <uuid> The unique identifier of the entry node. |
query Parameters
eventsOnly | boolean Empty events only. |
Responses
Get entry node retention policy
Gets the retention policy for each built-in event of a specific entry node.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
nodeId required | string <uuid> The unique identifier of the entry node. |
Responses
Response samples
- 200
{- "property1": {
- "months": 0
}, - "property2": {
- "months": 0
}
}
Modify entry node retention policy
Configures the retention policy for each built-in event of a specific entry node.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
nodeId required | string <uuid> The unique identifier of the entry node. |
Request Body schema: application/jsonrequired
The retention policy for each built-in event.
additional property | object (EventRetentionPolicy) | ||
|
Responses
Request samples
- Payload
{- "property1": {
- "months": 0
}, - "property2": {
- "months": 0
}
}
Response samples
- 200
{- "property1": {
- "months": 0
}, - "property2": {
- "months": 0
}
}
Get entry node retention policy state
Gets the retention policy state for a specific entry node.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
nodeId required | string <uuid> The unique identifier of the entry node. |
Responses
Response samples
- 200
{- "enabled": true
}
Modify entry node retention policy state
Configures the retention policy state for a specific entry node.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
nodeId required | string <uuid> The unique identifier of the entry node. |
Request Body schema: application/jsonrequired
The retention policy state.
enabled | boolean Events retention policy state. |
Responses
Request samples
- Payload
{- "enabled": true
}
Response samples
- 200
{- "enabled": true
}
List aggregate nodes
Gets the list of the aggregate nodes.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Responses
Response samples
- 200
{- "elements": [
- {
- "id": "142c9180-5d38-4a65-924b-174c35dfd34b",
- "state": "NEW",
- "name": "Prova aggregato",
- "description": "desc",
- "imageUrl": "image",
- "entryNodes": [
- "142c9180-5d38-4a65-924b-174c35dfd34b"
], - "matchingProperties": {
- "caseSensitive": true,
- "properties": [
- "base.contacts.email"
]
}, - "exclusionFilters": [
- {
- "property": "base.contacts.email",
- "value": "test",
- "pattern": "START_WITH"
}, - {
- "property": "base.pictureUrl",
- "value": "boh",
- "pattern": "CONTAINS"
}
]
}
], - "page": {
- "number": 0,
- "size": 9,
- "totalElements": 1,
- "totalPages": 1
}
}
Create aggregate node
Creates a new aggregate node.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Request Body schema: application/jsonrequired
The aggregate node object.
name | string The name of aggregate node. |
description | string or null The description of aggregate node. |
imageUrl | string or null The url of the logo. |
entryNodes | Array of strings <uuid> non-empty [ items <uuid > ] |
object | |
Array of objects or null Exclusion filters can be applied on the aggregate node to exclude customers and associated events (max 10 filters). |
Responses
Request samples
- Payload
{- "name": "string",
- "description": "string",
- "imageUrl": "string",
- "entryNodes": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "matchingProperties": {
- "properties": [
- "string"
], - "caseSensitive": true
}, - "exclusionFilters": [
- {
- "property": "string",
- "value": "string",
- "pattern": "START_WITH"
}
]
}
Response samples
- 201
{- "name": "string",
- "description": "string",
- "imageUrl": "string",
- "entryNodes": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "matchingProperties": {
- "properties": [
- "string"
], - "caseSensitive": true
}, - "exclusionFilters": [
- {
- "property": "string",
- "value": "string",
- "pattern": "START_WITH"
}
], - "state": "ACTIVE",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
Get aggregate node
Gets the details of a specific aggregate node.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
aggregateNodeId required | string <uuid> The unique identifier of the aggregate node. |
Responses
Response samples
- 200
{- "name": "string",
- "description": "string",
- "imageUrl": "string",
- "entryNodes": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "matchingProperties": {
- "properties": [
- "string"
], - "caseSensitive": true
}, - "exclusionFilters": [
- {
- "property": "string",
- "value": "string",
- "pattern": "START_WITH"
}
], - "state": "ACTIVE",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
Modify aggregate node
Modifies an aggregate node.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
aggregateNodeId required | string <uuid> The unique identifier of the aggregate node. |
Request Body schema: application/jsonrequired
The aggregate node object. The properties entryNodes and matchingProperties cannot be changed.
name | string The name of aggregate node. |
description | string or null The description of aggregate node. |
imageUrl | string or null The url of the logo. |
entryNodes | Array of strings <uuid> non-empty [ items <uuid > ] |
object | |
Array of objects or null Exclusion filters can be applied on the aggregate node to exclude customers and associated events (max 10 filters). | |
state | string Enum: "ACTIVE" "NEW" "LOCKED" "REMOVED" State of aggregate node. |
Responses
Request samples
- Payload
{- "name": "string",
- "description": "string",
- "imageUrl": "string",
- "entryNodes": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "matchingProperties": {
- "properties": [
- "string"
], - "caseSensitive": true
}, - "exclusionFilters": [
- {
- "property": "string",
- "value": "string",
- "pattern": "START_WITH"
}
], - "state": "ACTIVE"
}
Response samples
- 200
{- "name": "string",
- "description": "string",
- "imageUrl": "string",
- "entryNodes": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "matchingProperties": {
- "properties": [
- "string"
], - "caseSensitive": true
}, - "exclusionFilters": [
- {
- "property": "string",
- "value": "string",
- "pattern": "START_WITH"
}
], - "state": "ACTIVE",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
Modify aggregate node state
Changes the state of an aggregate node. Currently the only supported transition is from NEW to ACTIVE.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
aggregateNodeId required | string <uuid> The unique identifier of the aggregate node. |
Request Body schema: application/jsonrequired
The aggregate node state.
state | string Enum: "ACTIVE" "NEW" "LOCKED" "REMOVED" State of aggregate node. |
Responses
Request samples
- Payload
{- "state": "ACTIVE"
}
Response samples
- 200
{- "state": "ACTIVE"
}
List aggregate node send source subscriptions
Gets all the send source subscriptions of an aggregate node.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
aggregateNodeId required | string <uuid> The unique identifier of the aggregate node. |
Responses
Response samples
- 200
[- {
- "subscriptionId": "string",
- "path": "string",
- "entryNodeName": "string",
- "entryNodeId": "c516f9fa-e108-4436-ab5a-405e86272b1d",
- "type": "string"
}
]
Get customer base properties
Gets all the customer base properties.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Responses
Response samples
- 200
{- "elements": [
- {
- "name": "string",
- "description": "string",
- "enabled": true
}
]
}
Modify customer base property state
Enables or disables a customer base property.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
name required | string The name of the customer base property. |
Request Body schema: application/jsonrequired
The object to enable or disable the property.
name | string The json path of the base property. |
description | string The description of base property. |
enabled | boolean Flag for enable/disable the base property. |
Responses
Request samples
- Payload
{- "name": "string",
- "description": "string",
- "enabled": true
}
Response samples
- 200
{- "name": "string",
- "description": "string",
- "enabled": true
}
Get customer extended properties
Gets customer extended properties.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Responses
Response samples
- 200
{- "property1": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}, - "property2": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}
}
Modify customer extended properties
Modifies customer extended properties.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Request Body schema: application/jsonrequired
The json schema that defines the extended profile.
Each json schema property can include the following custom property: label, enabled, indexed, and mergePolicy. For properties of type String, the property maxLength is required; the default value (i.e. if no other value is passed) is 255 for scalar properties, 1000 for String array properties (in this case, the maxLength property refers to the sum of the lengths of strings in the array plus length of separators)
MaxLength property must be between 1 and 6000
Property indexed
can only be changed by users with role CLAB_OPERATOR
.
In property names it is not possible to use "." (e.g. "my.property")
additional property | (object or object or object or object) or (object or object) or (object or object) or (object or object) | ||||
One of One of
|
Responses
Request samples
- Payload
{- "property1": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}, - "property2": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}
}
Response samples
- 200
- 400
{- "property1": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}, - "property2": {
- "contactlabProperties": {
- "maxLength": 255,
- "label": "string",
- "enabled": true,
- "indexed": true,
- "flowEnabled": true
}, - "type": "number"
}
}
List sources
Gets the workspace source list.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Responses
Response samples
- 200
{- "elements": [
- {
- "provider": "API",
- "properties": {
- "allowedIPs": "string"
}, - "name": "string",
- "description": "string",
- "nodes": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "enabled": true,
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "token": "string"
}
], - "page": {
- "size": 50,
- "totalElements": 0,
- "totalPages": 0,
- "number": 0
}
}
Create source
Creates a new source. Only CLAB_OPERATOR and ADMIN roles are allowed to create a Send source. Please note that sources with the following providers can no longer be created (Javascript, MAGENTO, ANDROID_SDK, OBJECTIVEC_SDK, NODEJS_SDK, JAVA_SDK, SCALA_SDK, DOTNET_SDK)
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Request Body schema: application/jsonrequired
The source configuration object.
provider | string Value: "API" The provider of the source. |
object | |
name | string The name of source. |
description | string or null The description of source. |
nodes | Array of strings <uuid> non-empty [ items <uuid > ] List of unique identifier where source is enabled. |
enabled | boolean Default: true Flag for enable-disable source. |
Responses
Request samples
- Payload
{- "provider": "CONTACTPLAN",
- "properties": {
- "exportProducts": true,
- "exportStores": true,
- "groupPk": 0,
- "userdbId": 0,
- "eventPropertiesColumnMapping": [
- {
- "mapping": [
- {
- "hub": "string",
- "plan": "string"
}
], - "model": "ABANDONED_CART"
}
], - "productsPropertiesColumnMapping": [
- {
- "mapping": [
- {
- "hub": "string",
- "plan": "string"
}
], - "model": "ABANDONED_CART"
}
], - "classifications": [
- "string"
]
}, - "name": "string",
- "description": "string",
- "nodes": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "enabled": true
}
Response samples
- 201
{- "provider": "CONTACTPLAN",
- "properties": {
- "exportProducts": true,
- "exportStores": true,
- "groupPk": 0,
- "userdbId": 0,
- "eventPropertiesColumnMapping": [
- {
- "mapping": [
- {
- "hub": "string",
- "plan": "string"
}
], - "model": "ABANDONED_CART"
}
], - "productsPropertiesColumnMapping": [
- {
- "mapping": [
- {
- "hub": "string",
- "plan": "string"
}
], - "model": "ABANDONED_CART"
}
], - "classifications": [
- "string"
]
}, - "name": "string",
- "description": "string",
- "nodes": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "enabled": true,
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "token": "string"
}
Get source
Gets a source details.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
sourceId required | string <uuid> The unique identifier of the source. |
Responses
Response samples
- 200
{- "provider": "CONTACTPLAN",
- "properties": {
- "exportProducts": true,
- "exportStores": true,
- "groupPk": 0,
- "userdbId": 0,
- "eventPropertiesColumnMapping": [
- {
- "mapping": [
- {
- "hub": "string",
- "plan": "string"
}
], - "model": "ABANDONED_CART"
}
], - "productsPropertiesColumnMapping": [
- {
- "mapping": [
- {
- "hub": "string",
- "plan": "string"
}
], - "model": "ABANDONED_CART"
}
], - "classifications": [
- "string"
]
}, - "name": "string",
- "description": "string",
- "nodes": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "enabled": true,
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "token": "string"
}
Modify source
Modifies a source. Only CLAB_OPERATOR and ADMIN roles are allowed to modify a Send source.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
sourceId required | string <uuid> The unique identifier of the source. |
Request Body schema: application/jsonrequired
The source configuration object.
provider | string Default: "API" Enum: "API" "MAGENTO" "ANDROID_SDK" "OBJECTIVEC_SDK" "NODEJS_SDK" "JAVA_SDK" "SCALA_SDK" "DOTNET_SDK" The provider of the source. |
object | |
name | string The name of source. |
description | string or null The description of source. |
nodes | Array of strings <uuid> non-empty [ items <uuid > ] List of unique identifier where source is enabled. |
enabled | boolean Default: true Flag for enable-disable source. |
id | string <uuid> Unique identifier of source. |
Responses
Request samples
- Payload
{- "provider": "CONTACTPLAN",
- "properties": {
- "exportProducts": true,
- "exportStores": true,
- "groupPk": 0,
- "userdbId": 0,
- "eventPropertiesColumnMapping": [
- {
- "mapping": [
- {
- "hub": "string",
- "plan": "string"
}
], - "model": "ABANDONED_CART"
}
], - "productsPropertiesColumnMapping": [
- {
- "mapping": [
- {
- "hub": "string",
- "plan": "string"
}
], - "model": "ABANDONED_CART"
}
], - "classifications": [
- "string"
]
}, - "name": "string",
- "description": "string",
- "nodes": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "enabled": true,
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
Response samples
- 200
{- "provider": "CONTACTPLAN",
- "properties": {
- "exportProducts": true,
- "exportStores": true,
- "groupPk": 0,
- "userdbId": 0,
- "eventPropertiesColumnMapping": [
- {
- "mapping": [
- {
- "hub": "string",
- "plan": "string"
}
], - "model": "ABANDONED_CART"
}
], - "productsPropertiesColumnMapping": [
- {
- "mapping": [
- {
- "hub": "string",
- "plan": "string"
}
], - "model": "ABANDONED_CART"
}
], - "classifications": [
- "string"
]
}, - "name": "string",
- "description": "string",
- "nodes": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "enabled": true,
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "token": "string"
}
Refresh source token
Refreshes the source token.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
sourceId required | string <uuid> The unique identifier of the source. |
Responses
Response samples
- 200
{- "provider": "CONTACTPLAN",
- "properties": {
- "exportProducts": true,
- "exportStores": true,
- "groupPk": 0,
- "userdbId": 0,
- "eventPropertiesColumnMapping": [
- {
- "mapping": [
- {
- "hub": "string",
- "plan": "string"
}
], - "model": "ABANDONED_CART"
}
], - "productsPropertiesColumnMapping": [
- {
- "mapping": [
- {
- "hub": "string",
- "plan": "string"
}
], - "model": "ABANDONED_CART"
}
], - "classifications": [
- "string"
]
}, - "name": "string",
- "description": "string",
- "nodes": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "enabled": true,
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "token": "string"
}
Get default customer matching policy
Gets the default unique customer matching policies.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
Responses
Response samples
- 200
{- "properties": [
- "string"
], - "caseSensitive": true
}
Get customer matching policy
Gets the node unique customer matching policies. This route is deprecated, please use GET on /workspaces/{workspaceId}/configuration/nodes/entries/{nodeId}
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
nodeId required | string <uuid> The unique identifier of the node. |
Responses
Response samples
- 200
{- "properties": [
- "string"
], - "caseSensitive": true
}
Modify customer matching policy
Updates the unique customer matching policies for the aggregation on the selected node. This route is deprecated, please use PUT on /workspaces/{workspaceId}/configuration/nodes/entries/{nodeId}
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
nodeId required | string <uuid> The unique identifier of the node. |
Request Body schema: application/jsonrequired
The matching policy configuration for the selected node.
properties | Array of strings non-empty Rules of aggregations. |
caseSensitive | boolean Flag that specifies if the matching policy check will be performed considering the field text case. |
Responses
Request samples
- Payload
{- "properties": [
- "string"
], - "caseSensitive": true
}
Response samples
- 200
{- "properties": [
- "string"
], - "caseSensitive": true
}
List users
Gets the users paginated list.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
query Parameters
search | string Term to filter results based on a specific pattern contained in the name, surname, username or email. |
Responses
Response samples
- 200
{- "elements": [
- {
- "id": 229,
- "name": "Claire",
- "registeredAt": null,
- "updatedAt": null,
- "nodes": [
- {
- "id": "be4f0058-c51e-4909-acdc-373dfba102bd",
- "permission": "RW"
}
]
}
], - "page": {
- "size": 50,
- "totalElements": 0,
- "totalPages": 0,
- "number": 0
}
}
Get user
Gets a user details.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
id required | integer The unique identifier of the user. |
Responses
Response samples
- 200
{- "id": 229,
- "name": "Claire",
- "registeredAt": null,
- "updatedAt": null,
- "nodes": [
- {
- "id": "be4f0058-c51e-4909-acdc-373dfba102bd",
- "permission": "RW"
}
]
}
Modify user
Modify user nodes.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
id required | string <uuid> The unique identifier of the user. |
Request Body schema: application/jsonrequired
The user configuration object.
required | Array of objects | ||||
Array
|
Responses
Request samples
- Payload
{- "nodes": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "permission": "R"
}
]
}
Response samples
- 200
{- "id": 229,
- "name": "Claire",
- "registeredAt": null,
- "updatedAt": null,
- "nodes": [
- {
- "id": "be4f0058-c51e-4909-acdc-373dfba102bd",
- "permission": "RW"
}
]
}
Get customer properties
Gets the customer json schema with references resolved if the relative parameter is true
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
query Parameters
resolveReferences | boolean Whether to resolve references or not. |
Responses
Response samples
- 200
{ }
Modify customer base property state
Enables or disables a customer base property.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
baseProperty required | string The base property to toggle. |
Request Body schema: application/jsonrequired
The value of the flag.
value | boolean True to enable the property, False to disable the property. |
Responses
Request samples
- Payload
{- "value": true
}
Response samples
- 200
{- "value": true
}
Get consent
Gets an operation on consents.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
id required | string Identifier of the consent log. |
Responses
Response samples
- 200
{- "id": 0,
- "customerId": "87d8e330-2878-4742-a86f-dbbb3bf522ac",
- "date": "2019-08-24T14:15:22Z",
- "type": "DISCLAIMER_READ",
- "property": "string",
- "value": "string",
- "sourceId": "797f5a94-3689-4ac8-82fd-d749511ea2b2",
- "userId": 0
}
List consents
Gets list of operations on consents.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
query Parameters
customerId | string Identifier of the customer. |
uniqueKey | string The json structured data containing the values of the unique customer property |
startDate | string <date> The date interval lower bound. |
endDate | string <date> The date interval upper bound. |
type | string (ConsentEventType) Enum: "DISCLAIMER_READ" "CONSENT_CHANGED" "CONSENT_RESTRICTED" "CONSENT_OBJECTED" "DATA_PORTABILITY_REQUESTED" "FORCED_DELETE" The type of consent log event. |
property | string Json path of property. |
sort | string Sort field and direction. |
nodes | string Comma separated node ids. |
Responses
Response samples
- 200
{- "elements": [
- {
- "id": 0,
- "customerId": "87d8e330-2878-4742-a86f-dbbb3bf522ac",
- "date": "2019-08-24T14:15:22Z",
- "type": "DISCLAIMER_READ",
- "property": "string",
- "value": "string",
- "sourceId": "797f5a94-3689-4ac8-82fd-d749511ea2b2",
- "userId": 0
}
], - "page": {
- "size": 50,
- "totalElements": 0,
- "totalPages": 0,
- "number": 0
}
}
Search customers
Searches customers using the provided query parameters.
The matched items are paged and sorted (by descending update date as default).
The maximum number of matched elements is 10000.
Authorizations:
path Parameters
workspaceId required | string <uuid> The unique identifier of the workspace. |
query Parameters
nodeId required | string <uuid> The nodeId of the customer. |
externalId | string The externalId of the customer. |
query | string Complex query filter. |
fields | string Comma-separated list of properties to include in the response. |
size | integer Size of the response. |
sort | string Sorting of the response. |
page | integer Page of the response. |
Responses
Response samples
- 200
{- "elements": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "intId": 0,
- "externalId": "string",
- "nodeId": "959356e3-6168-4a92-b4a5-b9d462be6177",
- "base": {
- "pictureUrl": "string",
- "title": "string",
- "prefix": "string",
- "firstName": "string",
- "lastName": "string",
- "middleName": "string",
- "gender": "string",
- "dob": "2019-08-24",
- "locale": "string",
- "timezone": "Africa/Abidjan",
- "contacts": {
- "email": "user@example.com",
- "fax": "string",
- "mobilePhone": "string",
- "phone": "string",
- "otherContacts": [
- {
- "name": "string",
- "type": "MOBILE",
- "value": "string"
}
], - "mobileDevices": [
- {
- "identifier": "string",
- "appId": "string",
- "name": "string",
- "type": "IOS",
- "notificationService": "APN"
}
]
}, - "address": {
- "street": "string",
- "city": "string",
- "country": "string",
- "province": "string",
- "region": "string",
- "zip": "string",
- "geo": {
- "lat": 0,
- "lon": 0
}
}, - "credential": {
- "password": "string",
- "username": "string"
}, - "educations": [
- {
- "id": "string",
- "schoolType": "PRIMARY_SCHOOL",
- "schoolName": "string",
- "schoolConcentration": "string",
- "startYear": 0,
- "endYear": 0,
- "isCurrent": true
}
], - "likes": [
- {
- "id": "string",
- "category": "string",
- "name": "string",
- "createdTime": "2019-08-24T14:15:22Z"
}
], - "socialProfile": {
- "facebook": "string",
- "google": "string",
- "instagram": "string",
- "linkedin": "string",
- "qzone": "string",
- "twitter": "string"
}, - "jobs": [
- {
- "id": "string",
- "companyIndustry": "string",
- "companyName": "string",
- "jobTitle": "string",
- "startDate": "2019-08-24",
- "endDate": "2019-08-24",
- "isCurrent": true
}
], - "subscriptions": [
- {
- "id": "string",
- "name": "string",
- "type": "string",
- "kind": "DIGITAL_MESSAGE",
- "subscribed": true,
- "startDate": "2019-08-24T14:15:22Z",
- "endDate": "2019-08-24T14:15:22Z",
- "subscriberId": "string",
- "registeredAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "subscribeContext": {
- "ip": "string",
- "userAgent": "string"
}, - "unsubscribeContext": {
- "ip": "string",
- "userAgent": "string"