Recommendations API Reference (latest)
Recommendations API are based on REST. This describes the resources that make up the official Adobe Target Recommendations API. The resources are designated by nouns or objects in the world of Recommendations like a feed or a design. The functionalities or operations on resources are designated by HTTP methods in each resource request.
A Recommendations API request looks like this:
curl -X POST \
https://mc.adobe.io/{{tenantId}}/target/recs/collections \
-H 'Accept: application/vnd.adobe.target.v1+json' \
-H 'Authorization: Bearer {{bearerToken}}' \
-H 'Content-Type: application/vnd.adobe.target.v1+json' \
-H 'X-Api-Key: {{xApiKey}}' \
-d '{
"name": "Backpacking Tents",
"rules": [
{
"id": {
"contains": [
"backpacking"
]
}
}
]
}'
The tenantId
is your Adobe Experience Cloud tenant ID. It is present as a subdomain of your Experience Cloud URL.
For example, if your Experience Cloud URL is piedpiper.experiencecloud.adobe.com or piedpiper.marketing.adobe.com, the
tenant ID is piedpiper.
bearerToken
and xApiKey
are security token variables explained below in Authentication.
- These APIs do not allow you to interact with resources created in the Recommendations Classic.
- Resources can not be deleted until they are no longer referenced by any other resources. For example, a criteria cannot be deleted if its being used in a recommendation activity. It can only be deleted if its removed from from wherever it is used.
- This documentation does not include following APIs:
- Entity Recommendation Download (legacy): To download CSV containing entity recommendations.
- Custom Algorithm Upload (legacy): To upload custom algorithm feed through POST request.
- Feeds
All Recommendations API requests are available in a Postman collection. Click the "Run in Postman" button to download the collection as a JSON file, then import it in Postman. Note this collection references a Postman environment, which is available from the Adobe I/O console integration page for your specific integration.
A collection is a set of items that are eligible for a recommendation. It is defined by a set of membership rules. If an item satisfies these rules, it is a member of the collection.
List collections
Gets all available collections.
Authorizations:
query Parameters
offset | integer <int32> (offset) Number of resources to skip from start in the server list. If not specified, the response list will start from first available resource. |
limit | integer <int32> (limit) Number of resources to request. If not specified, the response will include all available resources. |
orderby | string Enum: "id" "name" "lastModified" Name of the field by which the response list should be sorted. It can be prefixed with a |
name | string String to filter resources by name. If specified, all resources with a name containing the string are selected, otherwise the response will include all resources. Case-insensitive. |
Responses
Response samples
- 200
A response body example of a list containing 2 collections.
{- "offset": 0,
- "limit": 2147483647,
- "total": 2,
- "list": [
- {
- "id": 1,
- "name": "Men's Trail Running Shoes",
- "description": "Shoes marked for trail running in men's clothing category.",
- "lastModified": "2018-08-07T16:34:01.000Z",
- "lastModifiersName": "Buzz Lightyear",
- "lastModifiersEmail": "buzz@spacemail.com"
}, - {
- "id": 2,
- "name": "Climbing Harnesses",
- "description": "Harness type unisex accessories in climbing section.",
- "lastModified": "2018-08-07T16:35:01.000Z",
- "lastModifiersName": "Alex Honnold",
- "lastModifiersEmail": "honnold@climbinggold.com"
}
]
}
Create collection
Creates a new collection as specified by the rules provided and returns the newly created collection definition.
Authorizations:
Request Body schema: application/vnd.adobe.target.v1+json
Collection to be created/updated
name required | string <= 250 characters Unique name of the collection. |
description | string <= 1000 characters |
required | Array of objects (BasicMatcher) [ 1 .. 1000 ] items Array of rules containing attribute : operation pairs. The attribute is any valid entity attribute. It is a required field and it should not be more than 100 characters. The operation is a pair of operator and operand values. The operator can be one of:
The other part of operation, operand values, is an array of values. Each value cannot be more than 250 characters.
There must be atleast 1 value and no more than 1000 values. Operand values are not required when operator is
either |
Responses
Request samples
- Payload
A request body example of a collection object to be created/updated.
{- "name": "Backpacking Tents",
- "description": "Lightweight tents suitable for backpacking.",
- "rules": [
- {
- "bestUse": {
- "equals": [
- "backpacking"
]
}
}, - {
- "weight": {
- "less than": [
- "10"
]
}
}, - {
- "capacity": {
- "less than": [
- "4"
]
}
}
]
}
Response samples
- 201
A response body example of a collection object.
{- "id": 1,
- "name": "Backpacking Tents",
- "description": "Lightweight tents suitable for backpacking.",
- "lastModified": "2018-08-07T16:34:01.000Z",
- "lastModifiersName": "Buzz Lightyear",
- "lastModifierEmail": "buzz@spacemail.com",
- "rules": [
- {
- "bestUse": {
- "equals": [
- "backpacking"
]
}
}, - {
- "weight": {
- "less than": [
- "10"
]
}
}, - {
- "capacity": {
- "less than": [
- "4"
]
}
}
]
}
Get collection
Gets the collection with the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a collection object.
{- "id": 1,
- "name": "Backpacking Tents",
- "description": "Lightweight tents suitable for backpacking.",
- "lastModified": "2018-08-07T16:34:01.000Z",
- "lastModifiersName": "Buzz Lightyear",
- "lastModifierEmail": "buzz@spacemail.com",
- "rules": [
- {
- "bestUse": {
- "equals": [
- "backpacking"
]
}
}, - {
- "weight": {
- "less than": [
- "10"
]
}
}, - {
- "capacity": {
- "less than": [
- "4"
]
}
}
]
}
Edit collection
Updates the collection with new name and/or new rules as specified and returns the updated collection definition.
Authorizations:
path Parameters
id required | integer <int32> |
Request Body schema: application/vnd.adobe.target.v1+json
Collection to be created/updated
name required | string <= 250 characters Unique name of the collection. |
description | string <= 1000 characters |
required | Array of objects (BasicMatcher) [ 1 .. 1000 ] items Array of rules containing attribute : operation pairs. The attribute is any valid entity attribute. It is a required field and it should not be more than 100 characters. The operation is a pair of operator and operand values. The operator can be one of:
The other part of operation, operand values, is an array of values. Each value cannot be more than 250 characters.
There must be atleast 1 value and no more than 1000 values. Operand values are not required when operator is
either |
Responses
Request samples
- Payload
A request body example of a collection object to be created/updated.
{- "name": "Backpacking Tents",
- "description": "Lightweight tents suitable for backpacking.",
- "rules": [
- {
- "bestUse": {
- "equals": [
- "backpacking"
]
}
}, - {
- "weight": {
- "less than": [
- "10"
]
}
}, - {
- "capacity": {
- "less than": [
- "4"
]
}
}
]
}
Response samples
- 200
A response body example of a collection object.
{- "id": 1,
- "name": "Backpacking Tents",
- "description": "Lightweight tents suitable for backpacking.",
- "lastModified": "2018-08-07T16:34:01.000Z",
- "lastModifiersName": "Buzz Lightyear",
- "lastModifierEmail": "buzz@spacemail.com",
- "rules": [
- {
- "bestUse": {
- "equals": [
- "backpacking"
]
}
}, - {
- "weight": {
- "less than": [
- "10"
]
}
}, - {
- "capacity": {
- "less than": [
- "4"
]
}
}
]
}
Delete collection
Deletes the collection referenced by the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a collection object.
{- "id": 1,
- "name": "Backpacking Tents",
- "description": "Lightweight tents suitable for backpacking.",
- "lastModified": "2018-08-07T16:34:01.000Z",
- "lastModifiersName": "Buzz Lightyear",
- "lastModifierEmail": "buzz@spacemail.com",
- "rules": [
- {
- "bestUse": {
- "equals": [
- "backpacking"
]
}
}, - {
- "weight": {
- "less than": [
- "10"
]
}
}, - {
- "capacity": {
- "less than": [
- "4"
]
}
}
]
}
Criteria are rules that determine which items to recommend based on a predetermined set of visitor behaviors. Criteria are categorized into different groups depending on the recommendation key and recommendation logic. These groups are: category, item, recent, popularity, profile attribute, custom.
List criteria
Gets all available criteria.
Authorizations:
query Parameters
offset | integer <int32> (offset) Number of resources to skip from start in the server list. If not specified, the response list will start from first available resource. |
limit | integer <int32> (limit) Number of resources to request. If not specified, the response will include all available resources. |
orderby | string Enum: "id" "name" "lastModified" Name of the field by which the response list should be sorted. It can be prefixed with a |
name | string String to filter resources by name. If specified, all resources with a name containing the string are selected, otherwise the response will include all resources. Case-insensitive. |
Responses
Response samples
- 200
A response body example of a list containing 3 criteria.
{- "offset": 2,
- "limit": 2147483647,
- "total": 3,
- "list": [
- {
- "id": 3,
- "name": "Recently Viewed Backpacks",
- "criteriaTitle": "Recently Viewed Backpacks",
- "criteriaGroup": "RECENT",
- "minInventory": 1,
- "configuration": {
- "rankingRules": [ ]
}, - "description": "Lightweight backpacks suitable for multiday excursions.",
- "lastModified": "2023-08-15T14:29:01.000Z",
- "lastModifiersName": "John Muir",
- "lastModifiersEmail": "jmuir@nps.gov"
}, - {
- "id": 4,
- "name": "People who viewed this also bought",
- "criteriaGroup": "ITEM",
- "type": "VIEWED_BOUGHT",
- "key": "LAST_PURCHASED",
- "aggregation": "NONE",
- "daysCount": "ONE_MONTH",
- "partialDesignAllowed": false,
- "backupDisabled": false,
- "excludePurchases": true,
- "enableCaching": false,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "pastBehaviorOrdinal": 0
}, - "description": "Items to recommend based upon similar purchases.",
- "lastModified": "2022-05-13T19:39:01.000Z",
- "lastModifiersName": "Dee Dee",
- "lastModifiersEmail": "ddee@dexterslabratory.inc"
}, - {
- "id": 5,
- "name": "Most Viewed Shirts",
- "criteriaGroup": "POPULARITY",
- "type": "VIEWED",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "minInventory": 1,
- "partialDesignAllowed": false,
- "backupDisabled": false,
- "excludePurchases": true,
- "enableCaching": false,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "inclusionRules": [
- {
- "attribute": "value",
- "operation": "dynamicallyRanges",
- "lowRange": "0",
- "highRange": "30"
}
], - "pastBehaviorOrdinal": 0
}, - "description": "Items to recommend based upon popularity.",
- "lastModified": "2023-08-15T14:29:01.000Z",
- "lastModifiersName": "Danny Phantom",
- "lastModifiersEmail": "dphantom@ghostzone.com"
}
]
}
Get criteria
Gets minimal criteria information with the given ID. For detailed information, make API call to criteria group path, for example, /criteria/item/{id}
.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a criteria with minimal information.
{- "id": 34,
- "name": "Recently Viewed Biking Accessories",
- "criteriaTitle": "Recently Viewed Biking Accessories",
- "criteriaGroup": "RECENT"
}
A design is a script that is used to determine how your recommendations look. You can create customized designs to provide the appearance you desire. The script can be HTML or non-HTML; non-HTML for non-web environments where click-tracking is not possible. Recommendation designs use Apache Velocity, so the script should make use of Velocity Template Language.
List designs
Gets all available designs.
Authorizations:
query Parameters
offset | integer <int32> (offset) Number of resources to skip from start in the server list. If not specified, the response list will start from first available resource. |
limit | integer <int32> (limit) Number of resources to request. If not specified, the response will include all available resources. |
includeScript | boolean Whether to include the design content. |
orderby | string Enum: "id" "name" "lastModified" Name of the field by which the response list should be sorted. It can be prefixed with a |
name | string String to filter resources by name. If specified, all resources with a name containing the string are selected, otherwise the response will include all resources. Case-insensitive. |
Responses
Response samples
- 200
A response body example of a list containing 2 designs.
{- "offset": 0,
- "limit": 2147483647,
- "total": 2,
- "list": [
- {
- "id": 4,
- "name": "Landing Page",
- "script": "<table>\\n <tr>\\n <td>\\n <a href=\\\"$entity1.pageUrl\\\">\\n <img src=\\\"$entity1.thumbnailUrl\\\"/>\\n <br/>$profile\\n <br/> $token\\n <br/>$url\\n </a>\\n </td>\\n <td>\\n <a href=\\\"$entity2.pageUrl\\\">\\n <img src=\\\"$entity2.thumbnailUrl\\\"/> \\n <br/>$entity2.name\\n <br/>$entity2.message\\n <br/> $entity2.value\\n </a>\\n </td>\\n <td>\\n <a href=\\\"$entity3.pageUrl\\\">\\n <img src=\\\"$entity3.thumbnailUrl\\\"/> \\n <br/>$entity3.name\\n <br/>$entity3.message\\n <br/> $entity3.value\\n </a>\\n </td>\\n </tr>\\n</table>",
- "type": "HTML",
- "lastModifiersEmail": "jneutron@boygenius.com",
- "lastModifiersName": "Jimmy Neutron",
- "lastModified": "2023-12-25T17:34:01.000Z"
}, - {
- "id": 5,
- "name": "Prime Product Box",
- "script": "<div id=\"productBox\">$entity1.name</div>",
- "type": "HTML",
- "lastModifiersEmail": "stentacles@krustykrab.com",
- "lastModifiersName": "Squidward Tentacles",
- "lastModified": "2022-08-07T16:34:01.000Z"
}
]
}
Create a design
Creates a new design as specified by the script provided and returns the newly created design definition.
Authorizations:
Request Body schema: application/vnd.adobe.target.v1+json
Design to be created/updated
name required | string <= 250 characters Unique name of the design. |
script required | string <= 65000 characters Velocity template containing at least one entity object. Velocity Engine 1.7 is supported. |
type | string Default: "OTHER" Enum: "HTML" "JSON" "OTHER" The content type of the design script. |
Responses
Request samples
- Payload
A request body example of a design to be created/updated.
{- "name": "Landing Page",
- "script": "name = $entity1.name<br/> details= $entity1.details <table>\\n <tr>\\n <td>\\n <a href=\\\"$entity1.pageUrl\\\">\\n <img src=\\\"$entity1.thumbnailUrl\\\"/>\\n <br/>$profile\\n <br/> $token\\n <br/>$url\\n </a>\\n </td>\\n <td>\\n <a href=\\\"$entity2.pageUrl\\\">\\n <img src=\\\"$entity2.thumbnailUrl\\\"/> \\n <br/>$entity2.name\\n <br/>$entity2.message\\n <br/> $entity2.value\\n </a>\\n </td>\\n <td>\\n <a href=\\\"$entity3.pageUrl\\\">\\n <img src=\\\"$entity3.thumbnailUrl\\\"/> \\n <br/>$entity3.name\\n <br/>$entity3.message\\n <br/> $entity3.value\\n </a>\\n </td>\\n </tr>\\n</table>"
}
Response samples
- 201
A response body example of a design object.
{- "id": 1,
- "name": "Landing Page",
- "script": "<table>\\n <tr>\\n <td>\\n <a href=\\\"$entity1.pageUrl\\\">\\n <img src=\\\"$entity1.thumbnailUrl\\\"/>\\n <br/>$profile\\n <br/> $token\\n <br/>$url\\n </a>\\n </td>\\n <td>\\n <a href=\\\"$entity2.pageUrl\\\">\\n <img src=\\\"$entity2.thumbnailUrl\\\"/> \\n <br/>$entity2.name\\n <br/>$entity2.message\\n <br/> $entity2.value\\n </a>\\n </td>\\n <td>\\n <a href=\\\"$entity3.pageUrl\\\">\\n <img src=\\\"$entity3.thumbnailUrl\\\"/> \\n <br/>$entity3.name\\n <br/>$entity3.message\\n <br/> $entity3.value\\n </a>\\n </td>\\n </tr>\\n</table>",
- "type": "HTML"
}
Get design
Gets the design with the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
query Parameters
includeScript | boolean Whether to include the design content. |
Responses
Response samples
- 200
A response body example of a design object.
{- "id": 1,
- "name": "Landing Page",
- "script": "<table>\\n <tr>\\n <td>\\n <a href=\\\"$entity1.pageUrl\\\">\\n <img src=\\\"$entity1.thumbnailUrl\\\"/>\\n <br/>$profile\\n <br/> $token\\n <br/>$url\\n </a>\\n </td>\\n <td>\\n <a href=\\\"$entity2.pageUrl\\\">\\n <img src=\\\"$entity2.thumbnailUrl\\\"/> \\n <br/>$entity2.name\\n <br/>$entity2.message\\n <br/> $entity2.value\\n </a>\\n </td>\\n <td>\\n <a href=\\\"$entity3.pageUrl\\\">\\n <img src=\\\"$entity3.thumbnailUrl\\\"/> \\n <br/>$entity3.name\\n <br/>$entity3.message\\n <br/> $entity3.value\\n </a>\\n </td>\\n </tr>\\n</table>",
- "type": "HTML"
}
Edit design
Updates the design with new name and/or new script as specified and returns the updated design definition.
Authorizations:
path Parameters
id required | integer <int32> |
query Parameters
includeScript | boolean Whether to include the design content. |
Request Body schema: application/vnd.adobe.target.v1+json
Design to be created/updated
name required | string <= 250 characters Unique name of the design. |
script required | string <= 65000 characters Velocity template containing at least one entity object. Velocity Engine 1.7 is supported. |
type | string Default: "OTHER" Enum: "HTML" "JSON" "OTHER" The content type of the design script. |
Responses
Request samples
- Payload
A request body example of a design to be created/updated.
{- "name": "Landing Page",
- "script": "name = $entity1.name<br/> details= $entity1.details <table>\\n <tr>\\n <td>\\n <a href=\\\"$entity1.pageUrl\\\">\\n <img src=\\\"$entity1.thumbnailUrl\\\"/>\\n <br/>$profile\\n <br/> $token\\n <br/>$url\\n </a>\\n </td>\\n <td>\\n <a href=\\\"$entity2.pageUrl\\\">\\n <img src=\\\"$entity2.thumbnailUrl\\\"/> \\n <br/>$entity2.name\\n <br/>$entity2.message\\n <br/> $entity2.value\\n </a>\\n </td>\\n <td>\\n <a href=\\\"$entity3.pageUrl\\\">\\n <img src=\\\"$entity3.thumbnailUrl\\\"/> \\n <br/>$entity3.name\\n <br/>$entity3.message\\n <br/> $entity3.value\\n </a>\\n </td>\\n </tr>\\n</table>"
}
Response samples
- 200
A response body example of a design object.
{- "id": 1,
- "name": "Landing Page",
- "script": "<table>\\n <tr>\\n <td>\\n <a href=\\\"$entity1.pageUrl\\\">\\n <img src=\\\"$entity1.thumbnailUrl\\\"/>\\n <br/>$profile\\n <br/> $token\\n <br/>$url\\n </a>\\n </td>\\n <td>\\n <a href=\\\"$entity2.pageUrl\\\">\\n <img src=\\\"$entity2.thumbnailUrl\\\"/> \\n <br/>$entity2.name\\n <br/>$entity2.message\\n <br/> $entity2.value\\n </a>\\n </td>\\n <td>\\n <a href=\\\"$entity3.pageUrl\\\">\\n <img src=\\\"$entity3.thumbnailUrl\\\"/> \\n <br/>$entity3.name\\n <br/>$entity3.message\\n <br/> $entity3.value\\n </a>\\n </td>\\n </tr>\\n</table>",
- "type": "HTML"
}
Delete design
Deletes the design referenced by the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a design object.
{- "id": 1,
- "name": "Landing Page",
- "script": "<table>\\n <tr>\\n <td>\\n <a href=\\\"$entity1.pageUrl\\\">\\n <img src=\\\"$entity1.thumbnailUrl\\\"/>\\n <br/>$profile\\n <br/> $token\\n <br/>$url\\n </a>\\n </td>\\n <td>\\n <a href=\\\"$entity2.pageUrl\\\">\\n <img src=\\\"$entity2.thumbnailUrl\\\"/> \\n <br/>$entity2.name\\n <br/>$entity2.message\\n <br/> $entity2.value\\n </a>\\n </td>\\n <td>\\n <a href=\\\"$entity3.pageUrl\\\">\\n <img src=\\\"$entity3.thumbnailUrl\\\"/> \\n <br/>$entity3.name\\n <br/>$entity3.message\\n <br/> $entity3.value\\n </a>\\n </td>\\n </tr>\\n</table>",
- "type": "HTML"
}
Validate design
Validates a design by verifying the correctness of the script. If its correct, it returns number of entity objects used in the script; otherwise it returns the validation error.
Note this POST request does not create any resource. The endpoint is not a resource but rather it is simply a method to validate the design in request payload..
Authorizations:
Request Body schema: application/vnd.adobe.target.v1+json
Design to be created/updated
name required | string <= 250 characters Unique name of the design. |
script required | string <= 65000 characters Velocity template containing at least one entity object. Velocity Engine 1.7 is supported. |
type | string Default: "OTHER" Enum: "HTML" "JSON" "OTHER" The content type of the design script. |
Responses
Request samples
- Payload
A request body example of a design to be created/updated.
{- "name": "Landing Page",
- "script": "name = $entity1.name<br/> details= $entity1.details <table>\\n <tr>\\n <td>\\n <a href=\\\"$entity1.pageUrl\\\">\\n <img src=\\\"$entity1.thumbnailUrl\\\"/>\\n <br/>$profile\\n <br/> $token\\n <br/>$url\\n </a>\\n </td>\\n <td>\\n <a href=\\\"$entity2.pageUrl\\\">\\n <img src=\\\"$entity2.thumbnailUrl\\\"/> \\n <br/>$entity2.name\\n <br/>$entity2.message\\n <br/> $entity2.value\\n </a>\\n </td>\\n <td>\\n <a href=\\\"$entity3.pageUrl\\\">\\n <img src=\\\"$entity3.thumbnailUrl\\\"/> \\n <br/>$entity3.name\\n <br/>$entity3.message\\n <br/> $entity3.value\\n </a>\\n </td>\\n </tr>\\n</table>"
}
Response samples
- 200
A response body example of validation result of the design object provided in request.
{- "entityCount": 0,
- "valid": false,
- "errors": [
- {
- "key": "error.template.validate.entitiesRequired",
- "keyArguments": [ ],
- "text": "There should be at least one entity reference within the template script"
}
]
}
Entities refer to the items you want to recommend. Entities can be anything such as products, content (such as articles, slide shows, images, movies, and TV shows), job listings, restaurants, and so forths
Save entities
Creates entities, updates if present, with the given entity details and returns the numbers of entities rejected, and created or updated. Entities can be rejected if entity details do not conform to the schema. More info.
Note this POST request does not create a singular resource. The endpoint is not a resource but rather it is simply a method to save multiple entities specified in request payload.
Authorizations:
Request Body schema: application/vnd.adobe.target.v1+json
Entities to be created/updated
required | Array of objects (Entity) non-empty |
Responses
Request samples
- Payload
A request body example of an entity to be created/updated.
{- "entities": [
- {
- "name": "Rotisserie Chicken",
- "id": "wes2001",
- "environment": 4227,
- "categories": [
- "recreation:food"
], - "attributes": {
- "inventory": 77,
- "margin": 23,
- "message": "crashing helicopter",
- "pageUrl": "www.foobar.foo.com/helicopter.html",
- "thumbnailUrl": "www.foobar.foo.com/helicopter.jpg",
- "value": 19.2
}
}
]
}
Response samples
- 200
A response body example of entity batch update result showing a successful update.
{- "rejected": 0,
- "inserted/updated": 1
}
Delete entities
Deletes entities referenced by the given IDs. If no ID is given, all entities in the given environment are deleted. If no environment ID is given, entities will be deleted from all environments. Use this with caution!
Note this DELETE request does not delete a singular resource. The endpoint is not a resource but rather it is simply a method to delete multiple entities specified in request payload.
Authorizations:
query Parameters
ids | Array of strings[ items <= 1000 characters ] List of entity IDs. If not set, all entities will be deleted. |
environment | number <double> ID of an environment. If not set, entities will be deleted from all environments. |
Responses
Response samples
- 200
A response body example of entity batch delete result indicating all entities were deleted.
{- "operation": "Delete by client requested."
}
Get entity
Gets entity with the given ID from default environment. To retrieve entity from a specific environment, environmentId
request parameter can be used.
Authorizations:
path Parameters
id required | string <= 1000 characters |
query Parameters
environmentId | integer <int64> |
Responses
Response samples
- 200
A response body example of an entity object.
{- "name": "Rotisserie Chicken",
- "id": "item1",
- "environment": 4227,
- "categories": [
- "recreation:food"
], - "attributes": {
- "createdAt": "2019-07-05T05:48:26.244-04:00",
- "inventory": 77,
- "lastUpdatedAt": "2019-07-09T05:48:26.244-04:00",
- "margin": 23,
- "message": "crashing helicopter",
- "pageUrl": "www.foobar.foo.com/helicopter.html",
- "thumbnailUrl": "www.foobar.foo.com/helicopter.jpg",
- "value": 19.2
}
}
An exclusion is a subset of entities that should not be recommended to visitors. It is defined by a membership rule. If an item satisfies this rule, it is excluded from recommendations to visitors.
List exclusions
Gets all available exclusions.
Authorizations:
query Parameters
offset | integer <int32> (offset) Number of resources to skip from start in the server list. If not specified, the response list will start from first available resource. |
limit | integer <int32> (limit) Number of resources to request. If not specified, the response will include all available resources. |
orderby | string Enum: "id" "name" "lastModified" Name of the field by which the response list should be sorted. It can be prefixed with a |
name | string String to filter resources by name. If specified, all resources with a name containing the string are selected, otherwise the response will include all resources. Case-insensitive. |
Responses
Response samples
- 200
A response body example of a list containing 2 exclusions.
{- "offset": 0,
- "limit": 2147483647,
- "total": 2,
- "list": [
- {
- "id": 496,
- "name": "Men's Trail Running Shoes",
- "description": "Exclude Trail Running shoes for hiking",
- "lastModifiersEmail": "buzz@spacemail.com",
- "lastModifiersName": "Buzz Lightyear",
- "lastModified": "2018-08-07T16:34:01.000Z",
- "rule": {
- "name": {
- "contains": "hiking"
}
}
}, - {
- "id": 497,
- "name": "Climbing Shoes",
- "description": "Exclude climbing shoes for bouldering",
- "lastModifiersEmail": "honnold@climbinggold.com",
- "lastModifiersName": "Alex Honnold",
- "lastModified": "2018-08-07T16:35:01.000Z",
- "rule": {
- "name": {
- "contains": "bouldering"
}
}
}
]
}
Create exclusion
Creates a new exclusion as specified by the rule provided and returns the newly created exclusion definition.
Authorizations:
Request Body schema: application/vnd.adobe.target.v1+json
Exclusion to be created/updated
name required | string <= 250 characters |
description | string <= 1000 characters |
rule | object A rule containing attribute : operation pair. The attribute is any valid entity attribute. It is a required field and it should not be more than 100 characters. The operation is a pair of operator and operand values. The operator can be one of:
The other part of operation, operand values, is an array of values. Operand values are not required when operator is
either |
Responses
Request samples
- Payload
A request body example of an exclusion object to be created/updated.
{- "id": 428,
- "name": "Backpacking Tents",
- "description": "Exclude backpacking tents with less than 10 items remaining in the inventory",
- "rule": {
- "name": {
- "contains": "backpacking"
}
}
}
Response samples
- 201
A response body example of an exclusion object.
{- "id": 428,
- "name": "Backpacking Tents",
- "description": "Exclude backpacking tents with less than 10 items remaining in the inventory",
- "lastModifiersEmail": "buzz@spacemail.com",
- "lastModifiersName": "Buzz Lightyear",
- "lastModified": "2018-08-07T16:34:01.000Z",
- "rule": {
- "name": {
- "contains": "backpacking"
}
}
}
Get exclusion
Gets the exclusion with the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of an exclusion object.
{- "id": 428,
- "name": "Backpacking Tents",
- "description": "Exclude backpacking tents with less than 10 items remaining in the inventory",
- "lastModifiersEmail": "buzz@spacemail.com",
- "lastModifiersName": "Buzz Lightyear",
- "lastModified": "2018-08-07T16:34:01.000Z",
- "rule": {
- "name": {
- "contains": "backpacking"
}
}
}
Edit exclusion
Updates the exclusion with new name, description and/or new rule as specified and returns the updated exclusion definition.
Authorizations:
path Parameters
id required | integer <int32> |
Request Body schema: application/vnd.adobe.target.v1+json
Exclusion to be created/updated
name required | string <= 250 characters |
description | string <= 1000 characters |
rule | object A rule containing attribute : operation pair. The attribute is any valid entity attribute. It is a required field and it should not be more than 100 characters. The operation is a pair of operator and operand values. The operator can be one of:
The other part of operation, operand values, is an array of values. Operand values are not required when operator is
either |
Responses
Request samples
- Payload
A request body example of an exclusion object to be created/updated.
{- "id": 428,
- "name": "Backpacking Tents",
- "description": "Exclude backpacking tents with less than 10 items remaining in the inventory",
- "rule": {
- "name": {
- "contains": "backpacking"
}
}
}
Response samples
- 200
A response body example of an exclusion object.
{- "id": 428,
- "name": "Backpacking Tents",
- "description": "Exclude backpacking tents with less than 10 items remaining in the inventory",
- "lastModifiersEmail": "buzz@spacemail.com",
- "lastModifiersName": "Buzz Lightyear",
- "lastModified": "2018-08-07T16:34:01.000Z",
- "rule": {
- "name": {
- "contains": "backpacking"
}
}
}
Delete exclusion
Deletes the exclusion referenced by the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of an exclusion object.
{- "id": 428,
- "name": "Backpacking Tents",
- "description": "Exclude backpacking tents with less than 10 items remaining in the inventory",
- "lastModifiersEmail": "buzz@spacemail.com",
- "lastModifiersName": "Buzz Lightyear",
- "lastModified": "2018-08-07T16:34:01.000Z",
- "rule": {
- "name": {
- "contains": "backpacking"
}
}
}
Promotion is a special type of criteria that includes promoted items in your recommendation design. Item recommendation by promotions use available slots in the design and take precedence over criteria results and backup recommendations.
List promotions
List all available promotions.
Authorizations:
query Parameters
offset | integer <int32> (offset) Number of resources to skip from start in the server list. If not specified, the response list will start from first available resource. |
limit | integer <int32> (limit) Number of resources to request. If not specified, the response will include all available resources. |
Responses
Response samples
- 200
A response body example of a list containing 2 promotions.
{- "offset": 0,
- "limit": 2147483647,
- "total": 2,
- "list": [
- {
- "id": 1,
- "name": "Hiking shoes summer promotion",
- "type": "EXTERNAL",
- "schedule": {
- "start": "2018-07-01T00:00:00Z",
- "end": "2018-08-31T23:59:59Z"
}, - "order": {
- "type": "ORIGINAL"
}, - "configuration": {
- "collectionId": 3432
}, - "rules": [
- {
- "attribute": "category",
- "operation": "endsWith",
- "values": [
- "Hiking Shoes"
]
}
]
}, - {
- "id": 2,
- "name": "Shoes clearance sale",
- "type": "EXTERNAL",
- "order": {
- "type": "ORIGINAL"
}, - "rules": [
- {
- "attribute": "value",
- "operation": "lesserOrEquals",
- "values": [
- "200"
]
}
]
}
]
}
Create promotion
Creates a new promotion as specified by the settings and configuration provided and returns the newly created promotion definition.
Authorizations:
Request Body schema: application/vnd.adobe.target.v1+json
Promotion to be created/updated
name required | string <= 250 characters Unique name of the promotion. |
type required | string Value: "EXTERNAL" Type of promotion. Currently only external promotions can be created, in which promoted items do not originate from any of the criteria specified in the current recommendation activity. |
key | string Enum: "CURRENT" "LAST_PURCHASED" "LAST_VIEWED" "MOST_VIEWED" "PROFILE_ATTRIBUTE" Promotion key. Values:
|
attribute | string^(profile\.|user\.).+ Applicable when key is |
object (PromotionSchedule) Time duration for which promotion should be applied. | |
object (PromotionOrder) | |
object (PromotionConfiguration) Applicable only when rules are empty and type is not | |
Array of objects (InclusionMatcher) |
Responses
Request samples
- Payload
A request body example of a promotion object to be created/updated.
{- "name": "Hiking shoes summer promotion",
- "type": "EXTERNAL",
- "schedule": {
- "start": "2018-07-01T00:00:00Z",
- "end": "2018-08-31T23:59:59Z"
}, - "order": {
- "type": "ORIGINAL"
}, - "configuration": {
- "collectionId": 3432
}, - "rules": [
- {
- "attribute": "category",
- "operation": "endsWith",
- "values": [
- "Hiking Shoes"
]
}
]
}
Response samples
- 201
A response body example of a Promotion object.
{- "id": 1,
- "name": "Hiking shoes summer promotion",
- "type": "EXTERNAL",
- "schedule": {
- "start": "2018-07-01T00:00:00Z",
- "end": "2018-08-31T23:59:59Z"
}, - "order": {
- "type": "ORIGINAL"
}, - "configuration": {
- "collectionId": 3432
}, - "rules": [
- {
- "attribute": "category",
- "operation": "endsWith",
- "values": [
- "Hiking Shoes"
]
}
]
}
Get promotion
Gets the promotion with the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a Promotion object.
{- "id": 1,
- "name": "Hiking shoes summer promotion",
- "type": "EXTERNAL",
- "schedule": {
- "start": "2018-07-01T00:00:00Z",
- "end": "2018-08-31T23:59:59Z"
}, - "order": {
- "type": "ORIGINAL"
}, - "configuration": {
- "collectionId": 3432
}, - "rules": [
- {
- "attribute": "category",
- "operation": "endsWith",
- "values": [
- "Hiking Shoes"
]
}
]
}
Edit promotion
Updates the promotion with the new settings and configuration as specified and return the updated promotion definition.
Authorizations:
path Parameters
id required | integer <int32> |
Request Body schema: application/vnd.adobe.target.v1+json
Promotion to be created/updated
name required | string <= 250 characters Unique name of the promotion. |
type required | string Value: "EXTERNAL" Type of promotion. Currently only external promotions can be created, in which promoted items do not originate from any of the criteria specified in the current recommendation activity. |
key | string Enum: "CURRENT" "LAST_PURCHASED" "LAST_VIEWED" "MOST_VIEWED" "PROFILE_ATTRIBUTE" Promotion key. Values:
|
attribute | string^(profile\.|user\.).+ Applicable when key is |
object (PromotionSchedule) Time duration for which promotion should be applied. | |
object (PromotionOrder) | |
object (PromotionConfiguration) Applicable only when rules are empty and type is not | |
Array of objects (InclusionMatcher) |
Responses
Request samples
- Payload
A request body example of a promotion object to be created/updated.
{- "name": "Hiking shoes summer promotion",
- "type": "EXTERNAL",
- "schedule": {
- "start": "2018-07-01T00:00:00Z",
- "end": "2018-08-31T23:59:59Z"
}, - "order": {
- "type": "ORIGINAL"
}, - "configuration": {
- "collectionId": 3432
}, - "rules": [
- {
- "attribute": "category",
- "operation": "endsWith",
- "values": [
- "Hiking Shoes"
]
}
]
}
Response samples
- 200
A response body example of a Promotion object.
{- "id": 1,
- "name": "Hiking shoes summer promotion",
- "type": "EXTERNAL",
- "schedule": {
- "start": "2018-07-01T00:00:00Z",
- "end": "2018-08-31T23:59:59Z"
}, - "order": {
- "type": "ORIGINAL"
}, - "configuration": {
- "collectionId": 3432
}, - "rules": [
- {
- "attribute": "category",
- "operation": "endsWith",
- "values": [
- "Hiking Shoes"
]
}
]
}
Delete promotion
Deletes the promotion referenced by the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a Promotion object.
{- "id": 1,
- "name": "Hiking shoes summer promotion",
- "type": "EXTERNAL",
- "schedule": {
- "start": "2018-07-01T00:00:00Z",
- "end": "2018-08-31T23:59:59Z"
}, - "order": {
- "type": "ORIGINAL"
}, - "configuration": {
- "collectionId": 3432
}, - "rules": [
- {
- "attribute": "category",
- "operation": "endsWith",
- "values": [
- "Hiking Shoes"
]
}
]
}
Cart Criteria are criteria based on visitor's activity on multiple items. The recommendation keys are supplied through
mbox parameter cartIds
in comma-separated values. Only the first 10 values are considered.
List cart criteria
Gets all available cart based criteria.
Authorizations:
query Parameters
offset | integer <int32> (offset) Number of resources to skip from start in the server list. If not specified, the response list will start from first available resource. |
limit | integer <int32> (limit) Number of resources to request. If not specified, the response will include all available resources. |
Responses
Response samples
- 200
A response body example of a list containing 3 cart criteria.
{- "offset": 2,
- "limit": 2147483647,
- "total": 3,
- "list": [
- {
- "id": 3,
- "name": "Users who purchased this also purchased that within each session.",
- "criteriaGroup": "CART",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "modelActionSettings": {
- "actionOnKeyItems": "PURCHASE",
- "actionOnRecommendedItems": "PURCHASE",
- "basisForCoOccurrence": "SESSION"
}
}, - {
- "id": 4,
- "name": "Users who viewed this also viewed that across user sessions.",
- "criteriaGroup": "CART",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "modelActionSettings": {
- "actionOnKeyItems": "VIEW",
- "actionOnRecommendedItems": "VIEW",
- "basisForCoOccurrence": "USER"
}
}, - {
- "id": 5,
- "name": "Users who viewed this also bought that across user sessions in the same category.",
- "criteriaGroup": "CART",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "modelActionSettings": {
- "actionOnKeyItems": "VIEW",
- "actionOnRecommendedItems": "PURCHASE",
- "basisForCoOccurrence": "USER"
}, - "configuration": {
- "inclusionRulesKey": "LAST_PURCHASED",
- "inclusionRules": [
- {
- "attribute": "category",
- "operation": "contains",
- "source": {
- "name": "category",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}
]
}
}
]
}
Create cart criteria
Creates a new cart based criteria as specified by the settings and configuration provided and returns the newly created cart definition.
Authorizations:
Request Body schema: application/vnd.adobe.target.v1+json
Cart based criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
backupDisabled | boolean Default: false Whether backup recommendations are disabled when criteria does not generate enough recommendations. |
backupInclusionFilteringEnabled | boolean Default: true Whether inclusion rules on the criteria should be applied to backup recommendations. |
object (CriteriaCartConfiguration) | |
daysCount required | string Enum: "ONE_DAY" "TWO_DAYS" "ONE_WEEK" "TWO_WEEKS" "ONE_MONTH" "TWO_MONTHS" Time range of historical visitor behavioral data to consider for generating recommendations. |
excludePurchases | boolean Default: false Whether items that were previously purchased by the visitor should be excluded in recommendations. |
minInventory | integer <int32> >= 0 Minimum number of pieces needed in stock for an item to be considered for recommendaton. |
partialDesignAllowed | boolean Default: false Whether design be shown when the number of recommendations are less than item slots in the design. |
object |
Responses
Request samples
- Payload
A request body example of a cart based criteria to be created/updated.
{- "name": "Users who viewed this also bought that across user sessions in the same category.",
- "criteriaGroup": "CART",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "modelActionSettings": {
- "actionOnKeyItems": "VIEW",
- "actionOnRecommendedItems": "PURCHASE",
- "basisForCoOccurrence": "USER"
}, - "configuration": {
- "inclusionRulesKey": "LAST_PURCHASED",
- "inclusionRules": [
- {
- "attribute": "category",
- "operation": "equals",
- "source": {
- "name": "category",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}
]
}
}
Response samples
- 201
A response body example of a cart based criteria.
{- "id": 3,
- "name": "Users who viewed this also bought that across user sessions in the same category.",
- "criteriaGroup": "CART",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "modelActionSettings": {
- "actionOnKeyItems": "VIEW",
- "actionOnRecommendedItems": "PURCHASE",
- "basisForCoOccurrence": "USER"
}, - "configuration": {
- "inclusionRulesKey": "LAST_PURCHASED",
- "inclusionRules": [
- {
- "attribute": "category",
- "operation": "equals",
- "source": {
- "name": "category",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}
]
}
}
Get cart criteria
Gets the cart based criteria with the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a cart based criteria.
{- "id": 3,
- "name": "Users who viewed this also bought that across user sessions in the same category.",
- "criteriaGroup": "CART",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "modelActionSettings": {
- "actionOnKeyItems": "VIEW",
- "actionOnRecommendedItems": "PURCHASE",
- "basisForCoOccurrence": "USER"
}, - "configuration": {
- "inclusionRulesKey": "LAST_PURCHASED",
- "inclusionRules": [
- {
- "attribute": "category",
- "operation": "equals",
- "source": {
- "name": "category",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}
]
}
}
Edit cart criteria
Updates the cart based criteria with new settings and configuration as specified and returns the updated criteria definition.
Authorizations:
path Parameters
id required | integer <int32> |
Request Body schema: application/vnd.adobe.target.v1+json
Cart based criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
backupDisabled | boolean Default: false Whether backup recommendations are disabled when criteria does not generate enough recommendations. |
backupInclusionFilteringEnabled | boolean Default: true Whether inclusion rules on the criteria should be applied to backup recommendations. |
object (CriteriaCartConfiguration) | |
daysCount required | string Enum: "ONE_DAY" "TWO_DAYS" "ONE_WEEK" "TWO_WEEKS" "ONE_MONTH" "TWO_MONTHS" Time range of historical visitor behavioral data to consider for generating recommendations. |
excludePurchases | boolean Default: false Whether items that were previously purchased by the visitor should be excluded in recommendations. |
minInventory | integer <int32> >= 0 Minimum number of pieces needed in stock for an item to be considered for recommendaton. |
partialDesignAllowed | boolean Default: false Whether design be shown when the number of recommendations are less than item slots in the design. |
object |
Responses
Request samples
- Payload
A request body example of a cart based criteria to be created/updated.
{- "name": "Users who viewed this also bought that across user sessions in the same category.",
- "criteriaGroup": "CART",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "modelActionSettings": {
- "actionOnKeyItems": "VIEW",
- "actionOnRecommendedItems": "PURCHASE",
- "basisForCoOccurrence": "USER"
}, - "configuration": {
- "inclusionRulesKey": "LAST_PURCHASED",
- "inclusionRules": [
- {
- "attribute": "category",
- "operation": "equals",
- "source": {
- "name": "category",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}
]
}
}
Response samples
- 200
A response body example of a cart based criteria.
{- "id": 3,
- "name": "Users who viewed this also bought that across user sessions in the same category.",
- "criteriaGroup": "CART",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "modelActionSettings": {
- "actionOnKeyItems": "VIEW",
- "actionOnRecommendedItems": "PURCHASE",
- "basisForCoOccurrence": "USER"
}, - "configuration": {
- "inclusionRulesKey": "LAST_PURCHASED",
- "inclusionRules": [
- {
- "attribute": "category",
- "operation": "equals",
- "source": {
- "name": "category",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}
]
}
}
Delete cart criteria
Deletes the cart based criteria referenced by the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a cart based criteria.
{- "id": 3,
- "name": "Users who viewed this also bought that across user sessions in the same category.",
- "criteriaGroup": "CART",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "modelActionSettings": {
- "actionOnKeyItems": "VIEW",
- "actionOnRecommendedItems": "PURCHASE",
- "basisForCoOccurrence": "USER"
}, - "configuration": {
- "inclusionRulesKey": "LAST_PURCHASED",
- "inclusionRules": [
- {
- "attribute": "category",
- "operation": "equals",
- "source": {
- "name": "category",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}
]
}
}
Category Criteria are criteria based on item category. The recommendation key is currently viewed item category or visitor favorite category.
List category criteria
Gets all available category based criteria.
Authorizations:
query Parameters
offset | integer <int32> (offset) Number of resources to skip from start in the server list. If not specified, the response list will start from first available resource. |
limit | integer <int32> (limit) Number of resources to request. If not specified, the response will include all available resources. |
Responses
Response samples
- 200
A response body example of a list containing 3 category criteria.
{- "offset": 2,
- "limit": 2147483647,
- "total": 3,
- "list": [
- {
- "id": 3,
- "name": "Most Popular Content from Visitor's Favorite Category",
- "criteriaGroup": "CATEGORY",
- "type": "VIEWED",
- "key": "FAVORITE",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": false,
- "backupDisabled": false,
- "excludePurchases": true,
- "enableCaching": false,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "pastBehaviorOrdinal": 0
}
}, - {
- "id": 4,
- "name": "Top Selling Products from this Category",
- "criteriaGroup": "CATEGORY",
- "type": "BOUGHT",
- "key": "CURRENT",
- "aggregation": "NONE",
- "daysCount": "ONE_MONTH",
- "partialDesignAllowed": false,
- "backupDisabled": false,
- "excludePurchases": true,
- "enableCaching": false,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "pastBehaviorOrdinal": 0
}
}, - {
- "id": 5,
- "name": "Most Viewed Products from this Category",
- "criteriaGroup": "CATEGORY",
- "type": "VIEWED",
- "key": "CURRENT",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "minInventory": 1,
- "partialDesignAllowed": false,
- "backupDisabled": false,
- "excludePurchases": true,
- "enableCaching": false,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "inclusionRules": [
- {
- "attribute": "brand",
- "operation": "contains",
- "source": {
- "name": "colorDepth",
- "type": "MBOX"
}
}
], - "pastBehaviorOrdinal": -1
}
}
]
}
Create category criteria
Creates a new category based criteria as specified by the settings and configuration provided and returns the newly created criteria definition.
Authorizations:
Request Body schema: application/vnd.adobe.target.v1+json
Category based criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
aggregation | string Default: "NONE" Enum: "NONE" "AGGREGATE" "ALL_OR_NOTHING" Whether recommendations should be shown solely based on the key (
If the key is current category, only |
backupDisabled | boolean Default: false Whether backup recommendations are disabled when criteria does not generate enough recommendations. |
backupInclusionFilteringEnabled | boolean Default: true Whether inclusion rules on the criteria should be applied to backup recommendations. |
object (CriteriaCategoryConfiguration) Object containing inclusion rules, attribute weighting, price filter, and some more configuration options specific to the criteria group. | |
daysCount | string Enum: "ONE_DAY" "TWO_DAYS" "ONE_WEEK" "TWO_WEEKS" "ONE_MONTH" "TWO_MONTHS" Time range of historical visitor behavioral data to consider for generating recommendations. This field can not be used together with |
hoursCount | integer Time range of historical visitor behavioral data to consider for generating recommendations. This field can not be used together with |
excludePurchases | boolean Default: false Whether items that were previously purchased by the visitor should be excluded from recommendations. |
key required | string Enum: "CURRENT" "FAVORITE" Recommendation key. Values:
|
minInventory | integer <int32> >= 0 Minimum number of pieces needed in stock for an item to be considered for recommendaton. |
partialDesignAllowed | boolean Default: false Whether design be shown when the number of recommendations are less than item slots in the design. |
type required | string Enum: "BOUGHT" "VIEWED" Recommendation logic. Values:
|
Responses
Request samples
- Payload
A request body example of a category based criteria to be created/updated.
{- "name": "Most Popular Content from Visitor's Favorite Category",
- "criteriaGroup": "CATEGORY",
- "type": "VIEWED",
- "key": "FAVORITE",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": false,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "pastBehaviorOrdinal": 0
}
}
Response samples
- 201
A response body example of a category based criteria.
{- "id": 3,
- "name": "Most Popular Content from Visitor's Favorite Category",
- "criteriaGroup": "CATEGORY",
- "type": "VIEWED",
- "key": "FAVORITE",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": false,
- "backupDisabled": false,
- "excludePurchases": true,
- "enableCaching": false,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "pastBehaviorOrdinal": 0
}
}
Get category criteria
Gets the category based criteria with the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a category based criteria.
{- "id": 3,
- "name": "Most Popular Content from Visitor's Favorite Category",
- "criteriaGroup": "CATEGORY",
- "type": "VIEWED",
- "key": "FAVORITE",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": false,
- "backupDisabled": false,
- "excludePurchases": true,
- "enableCaching": false,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "pastBehaviorOrdinal": 0
}
}
Edit category criteria
Updates the category based criteria with new settings and configuration as specified and returns the updated criteria definition.
Authorizations:
path Parameters
id required | integer <int32> |
Request Body schema: application/vnd.adobe.target.v1+json
Category based criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
aggregation | string Default: "NONE" Enum: "NONE" "AGGREGATE" "ALL_OR_NOTHING" Whether recommendations should be shown solely based on the key (
If the key is current category, only |
backupDisabled | boolean Default: false Whether backup recommendations are disabled when criteria does not generate enough recommendations. |
backupInclusionFilteringEnabled | boolean Default: true Whether inclusion rules on the criteria should be applied to backup recommendations. |
object (CriteriaCategoryConfiguration) Object containing inclusion rules, attribute weighting, price filter, and some more configuration options specific to the criteria group. | |
daysCount | string Enum: "ONE_DAY" "TWO_DAYS" "ONE_WEEK" "TWO_WEEKS" "ONE_MONTH" "TWO_MONTHS" Time range of historical visitor behavioral data to consider for generating recommendations. This field can not be used together with |
hoursCount | integer Time range of historical visitor behavioral data to consider for generating recommendations. This field can not be used together with |
excludePurchases | boolean Default: false Whether items that were previously purchased by the visitor should be excluded from recommendations. |
key required | string Enum: "CURRENT" "FAVORITE" Recommendation key. Values:
|
minInventory | integer <int32> >= 0 Minimum number of pieces needed in stock for an item to be considered for recommendaton. |
partialDesignAllowed | boolean Default: false Whether design be shown when the number of recommendations are less than item slots in the design. |
type required | string Enum: "BOUGHT" "VIEWED" Recommendation logic. Values:
|
Responses
Request samples
- Payload
A request body example of a category based criteria to be created/updated.
{- "name": "Most Popular Content from Visitor's Favorite Category",
- "criteriaGroup": "CATEGORY",
- "type": "VIEWED",
- "key": "FAVORITE",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": false,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "pastBehaviorOrdinal": 0
}
}
Response samples
- 200
A response body example of a category based criteria.
{- "id": 3,
- "name": "Most Popular Content from Visitor's Favorite Category",
- "criteriaGroup": "CATEGORY",
- "type": "VIEWED",
- "key": "FAVORITE",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": false,
- "backupDisabled": false,
- "excludePurchases": true,
- "enableCaching": false,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "pastBehaviorOrdinal": 0
}
}
Delete category criteria
Deletes the category based criteria referenced by the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a category based criteria.
{- "id": 3,
- "name": "Most Popular Content from Visitor's Favorite Category",
- "criteriaGroup": "CATEGORY",
- "type": "VIEWED",
- "key": "FAVORITE",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": false,
- "backupDisabled": false,
- "excludePurchases": true,
- "enableCaching": false,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "pastBehaviorOrdinal": 0
}
}
Custom Criteria are criteria based on user-defined custom recommendations. You upload a CSV containing item keys and their corresponding list of recommendations. These recommendations, after applying configuration rules and settings, if any, will be delivered to your page. The item keys in your CSV should map to items or categories in the catalog. The recommendation key of this criteria can be any item based, category based key or profile attribute key depending on the item keys in the CSV. The CSV upload is carried out through a feed as part of configuration to create a custom criteria. Note, an item key refers to the key in the CSV feed whereas a recommendation key refers to how the item key will be treated, that is, it can be treated as ID of currently viewed item or visitor's favorite category.
List custom criteria
Gets all available custom criteria.
Authorizations:
query Parameters
offset | integer <int32> (offset) Number of resources to skip from start in the server list. If not specified, the response list will start from first available resource. |
limit | integer <int32> (limit) Number of resources to request. If not specified, the response will include all available resources. |
Responses
Response samples
- 200
A response body example of a list containing 3 custom criteria.
{- "offset": 42,
- "limit": 45,
- "total": 3,
- "list": [
- {
- "id": 43,
- "name": "Snowboarding recommendations",
- "criteriaTitle": "Snowboarding recs",
- "criteriaGroup": "CUSTOM",
- "key": "CURRENT",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "configuration": {
- "feed": {
- "environmentId": -1,
- "scheduleType": "daily",
- "scheduleTime": "00:00",
- "connection": {
- "type": "url",
}, - "uploadHistory": [
- {
- "status": "SUCCESS",
- "message": "800/50",
- "date": "2018-08-08T20:17:44.000-04:00"
}, - {
- "status": "SUCCESS",
- "message": "800/50",
- "date": "2018-08-07T20:26:13.000-04:00"
}
]
}
}
}, - {
- "id": 44,
- "name": "Member Trips",
- "criteriaTitle": "Adventure Trips",
- "criteriaGroup": "CUSTOM",
- "key": "CURRENT_CATEGORY",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": false,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "feed": {
- "environmentId": -1,
- "scheduleType": "weekly",
- "scheduleTime": "00:00",
- "connection": {
- "type": "url",
}, - "uploadHistory": [
- {
- "status": "SUCCESS",
- "message": "800/50",
- "date": "2018-08-08T12:33:21.000-04:00"
}, - {
- "status": "SUCCESS",
- "message": "800/50",
- "date": "2018-08-01T12:36:45.000-04:00"
}, - {
- "status": "FILE_NOT_FOUND",
- "message": "File does not exists",
- "date": "2018-07-23T12:31:22.000-04:00"
}
]
}
}
}, - {
- "id": 45,
- "name": "Classes Events",
- "criteriaTitle": "Classes & Events",
- "criteriaGroup": "CUSTOM",
- "key": "PROFILE_ATTRIBUTE",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "attribute": "profile.city",
- "feed": {
- "environmentId": 2304,
- "scheduleType": "daily",
- "scheduleTime": "00:00",
- "connection": {
- "type": "ftp",
- "attributes": {
- "SERVER": "ftp://ftp.adobe-weretail.com",
- "DIRECTORY": "/events/e4s",
- "FILENAME": "classesevents.csv",
- "USERNAME": "johnmuir",
- "PASSWORD": "apZMtr+dm2jk5K7INSz5Fg=="
}
}, - "uploadHistory": [
- {
- "status": "SUCCESS",
- "message": "800/50",
- "date": "2018-04-21T15:10:44.000-04:00"
}, - {
- "status": "UNKNOWN_ERROR",
- "message": "Connect to 54.22.123.21 timed out",
- "date": "2018-04-20T15:12:31.000-04:00"
}
]
}
}
}
]
}
Create custom criteria
Creates a new custom criteria as specified by the settings, configuration, and feed provided and returns the newly created criteria definition.
Authorizations:
Request Body schema: application/vnd.adobe.target.v1+json
Custom criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
backupDisabled | boolean Default: false Whether backup recommendations are disabled when enough recommendations from CSV feed are not applicable in design. |
backupInclusionFilteringEnabled | boolean Default: true Whether inclusion rules on the criteria should be applied to backup recommendations. |
required | object (CriteriaCustomConfiguration) Object containing inclusion rules, attribute weighting, price filter, and some more configuration options specific to the criteria group. |
excludePurchases | boolean Default: false Whether items that were previously purchased by the visitor should be excluded from recommendations. |
key required | string Enum: "CURRENT" "LAST_VIEWED" "LAST_PURCHASED" "MOST_VIEWED" "CURRENT_CATEGORY" "FAVORITE_CATEGORY" "PROFILE_ATTRIBUTE" Recommendation key. Values:
|
minInventory | integer <int32> >= 0 Minimum number of pieces needed in stock for an item to be considered for recommendaton. |
partialDesignAllowed | boolean Default: false Whether design be shown when the number of recommendations are less than item slots in the design. |
Responses
Request samples
- Payload
A request body example of a custom criteria to be created/updated.
{- "name": "Classes Events",
- "criteriaTitle": "Classes & Events",
- "key": "PROFILE_ATTRIBUTE",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "attribute": "profile.city",
- "feed": {
- "environmentId": 2304,
- "scheduleType": "daily",
- "scheduleTime": "00:00",
- "connection": {
- "type": "ftp",
- "attributes": {
- "SERVER": "ftp://ftp.adobe-weretail.com",
- "DIRECTORY": "/events/e4s",
- "FILENAME": "classesevents.csv",
- "USERNAME": "johnmuir",
- "PASSWORD": "apZMtr+dm2jk5K7INSz5Fg=="
}
}
}
}
}
Response samples
- 201
A response body example of a custom criteria.
{- "id": 45,
- "name": "Classes Events",
- "criteriaTitle": "Classes & Events",
- "criteriaGroup": "CUSTOM",
- "key": "PROFILE_ATTRIBUTE",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "attribute": "profile.city",
- "feed": {
- "environmentId": 2304,
- "scheduleType": "daily",
- "scheduleTime": "00:00",
- "connection": {
- "type": "ftp",
- "attributes": {
- "SERVER": "ftp://ftp.adobe-weretail.com",
- "DIRECTORY": "/events/e4s",
- "FILENAME": "classesevents.csv",
- "USERNAME": "johnmuir",
- "PASSWORD": "apZMtr+dm2jk5K7INSz5Fg=="
}
}, - "uploadHistory": [
- {
- "status": "SUCCESS",
- "message": "800/50",
- "date": "2018-04-21T15:10:44.000-04:00"
}, - {
- "status": "UNKNOWN_ERROR",
- "message": "Connect to 54.22.123.21 timed out",
- "date": "2018-04-20T15:12:31.000-04:00"
}
]
}
}
}
Get custom criteria
Gets the custom criteria with the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a custom criteria.
{- "id": 45,
- "name": "Classes Events",
- "criteriaTitle": "Classes & Events",
- "criteriaGroup": "CUSTOM",
- "key": "PROFILE_ATTRIBUTE",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "attribute": "profile.city",
- "feed": {
- "environmentId": 2304,
- "scheduleType": "daily",
- "scheduleTime": "00:00",
- "connection": {
- "type": "ftp",
- "attributes": {
- "SERVER": "ftp://ftp.adobe-weretail.com",
- "DIRECTORY": "/events/e4s",
- "FILENAME": "classesevents.csv",
- "USERNAME": "johnmuir",
- "PASSWORD": "apZMtr+dm2jk5K7INSz5Fg=="
}
}, - "uploadHistory": [
- {
- "status": "SUCCESS",
- "message": "800/50",
- "date": "2018-04-21T15:10:44.000-04:00"
}, - {
- "status": "UNKNOWN_ERROR",
- "message": "Connect to 54.22.123.21 timed out",
- "date": "2018-04-20T15:12:31.000-04:00"
}
]
}
}
}
Edit custom criteria
Updates the custom criteria with new settings, configuration and feed as specified and returns the updated criteria definition.
Authorizations:
path Parameters
id required | integer <int32> |
Request Body schema: application/vnd.adobe.target.v1+json
Custom criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
backupDisabled | boolean Default: false Whether backup recommendations are disabled when enough recommendations from CSV feed are not applicable in design. |
backupInclusionFilteringEnabled | boolean Default: true Whether inclusion rules on the criteria should be applied to backup recommendations. |
required | object (CriteriaCustomConfiguration) Object containing inclusion rules, attribute weighting, price filter, and some more configuration options specific to the criteria group. |
excludePurchases | boolean Default: false Whether items that were previously purchased by the visitor should be excluded from recommendations. |
key required | string Enum: "CURRENT" "LAST_VIEWED" "LAST_PURCHASED" "MOST_VIEWED" "CURRENT_CATEGORY" "FAVORITE_CATEGORY" "PROFILE_ATTRIBUTE" Recommendation key. Values:
|
minInventory | integer <int32> >= 0 Minimum number of pieces needed in stock for an item to be considered for recommendaton. |
partialDesignAllowed | boolean Default: false Whether design be shown when the number of recommendations are less than item slots in the design. |
Responses
Request samples
- Payload
A request body example of a custom criteria to be created/updated.
{- "name": "Classes Events",
- "criteriaTitle": "Classes & Events",
- "key": "PROFILE_ATTRIBUTE",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "attribute": "profile.city",
- "feed": {
- "environmentId": 2304,
- "scheduleType": "daily",
- "scheduleTime": "00:00",
- "connection": {
- "type": "ftp",
- "attributes": {
- "SERVER": "ftp://ftp.adobe-weretail.com",
- "DIRECTORY": "/events/e4s",
- "FILENAME": "classesevents.csv",
- "USERNAME": "johnmuir",
- "PASSWORD": "apZMtr+dm2jk5K7INSz5Fg=="
}
}
}
}
}
Response samples
- 200
A response body example of a custom criteria.
{- "id": 45,
- "name": "Classes Events",
- "criteriaTitle": "Classes & Events",
- "criteriaGroup": "CUSTOM",
- "key": "PROFILE_ATTRIBUTE",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "attribute": "profile.city",
- "feed": {
- "environmentId": 2304,
- "scheduleType": "daily",
- "scheduleTime": "00:00",
- "connection": {
- "type": "ftp",
- "attributes": {
- "SERVER": "ftp://ftp.adobe-weretail.com",
- "DIRECTORY": "/events/e4s",
- "FILENAME": "classesevents.csv",
- "USERNAME": "johnmuir",
- "PASSWORD": "apZMtr+dm2jk5K7INSz5Fg=="
}
}, - "uploadHistory": [
- {
- "status": "SUCCESS",
- "message": "800/50",
- "date": "2018-04-21T15:10:44.000-04:00"
}, - {
- "status": "UNKNOWN_ERROR",
- "message": "Connect to 54.22.123.21 timed out",
- "date": "2018-04-20T15:12:31.000-04:00"
}
]
}
}
}
Delete custom criteria
Deletes the custom criteria referenced by the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a custom criteria.
{- "id": 45,
- "name": "Classes Events",
- "criteriaTitle": "Classes & Events",
- "criteriaGroup": "CUSTOM",
- "key": "PROFILE_ATTRIBUTE",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "attribute": "profile.city",
- "feed": {
- "environmentId": 2304,
- "scheduleType": "daily",
- "scheduleTime": "00:00",
- "connection": {
- "type": "ftp",
- "attributes": {
- "SERVER": "ftp://ftp.adobe-weretail.com",
- "DIRECTORY": "/events/e4s",
- "FILENAME": "classesevents.csv",
- "USERNAME": "johnmuir",
- "PASSWORD": "apZMtr+dm2jk5K7INSz5Fg=="
}
}, - "uploadHistory": [
- {
- "status": "SUCCESS",
- "message": "800/50",
- "date": "2018-04-21T15:10:44.000-04:00"
}, - {
- "status": "UNKNOWN_ERROR",
- "message": "Connect to 54.22.123.21 timed out",
- "date": "2018-04-20T15:12:31.000-04:00"
}
]
}
}
}
Item Criteria are criteria based on visitor's activity on item. The recommendation key is currently viewed item, last viewed item, most viewed item or last purchased item. Note that this does not include recently viewed item, check Recent Criteria APIs for that.
List item criteria
Gets all available item based criteria.
Authorizations:
query Parameters
offset | integer <int32> (offset) Number of resources to skip from start in the server list. If not specified, the response list will start from first available resource. |
limit | integer <int32> (limit) Number of resources to request. If not specified, the response will include all available resources. |
Responses
Response samples
- 200
A response body example of a list containing 3 item based criteria.
{- "offset": 0,
- "limit": 3,
- "total": 3,
- "list": [
- {
- "id": 1,
- "name": "Items after buying road bike",
- "criteriaGroup": "ITEM",
- "type": "BOUGHT_CF",
- "key": "CURRENT",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "minInventory": 1,
- "partialDesignAllowed": false,
- "backupDisabled": false,
- "excludePurchases": false,
- "enableCaching": false,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "inclusionRules": [
- {
- "attribute": "category",
- "operation": "contains",
- "source": {
- "name": "category",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}, - {
- "attribute": "category",
- "operation": "contains",
- "values": [
- "bike-road"
]
}
], - "pastBehaviorOrdinal": -1
}
}, - {
- "id": 2,
- "name": "Similar items",
- "criteriaGroup": "ITEM",
- "type": "BOUGHT_CF",
- "key": "CURRENT",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "minInventory": 1,
- "partialDesignAllowed": false,
- "backupDisabled": true,
- "excludePurchases": false,
- "enableCaching": true,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "inclusionRules": [
- {
- "attribute": "brand",
- "operation": "contains",
- "source": {
- "name": "brand",
- "defaultValue": "rei-coop",
- "type": "ENTITY"
}
}
], - "pastBehaviorOrdinal": -1
}
}, - {
- "id": 3,
- "name": "Viewed items by users who last purchased current item",
- "criteriaGroup": "ITEM",
- "type": "VIEWED_BOUGHT",
- "key": "CURRENT",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "minInventory": 1,
- "partialDesignAllowed": true,
- "backupDisabled": true,
- "excludePurchases": false,
- "enableCaching": false,
- "backupInclusionFilteringEnabled": false,
- "configuration": {
- "pastBehaviorOrdinal": 0
}
}
]
}
Create item criteria
Creates a new item based criteria as specified by the settings and configuration provided and returns the newly created criteria definition.
Authorizations:
Request Body schema: application/vnd.adobe.target.v1+json
Item based criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
aggregation | string Default: "NONE" Enum: "NONE" "AGGREGATE" "ALL_OR_NOTHING" Whether recommendations should be shown solely based on the key (
If the key is |
backupDisabled | boolean Default: false Whether backup recommendations are disabled when criteria does not generate enough recommendations. |
backupInclusionFilteringEnabled | boolean Default: true Whether inclusion rules on the criteria should be applied to backup recommendations. |
required | object (CriteriaItemConfiguration) Object containing inclusion rules, attribute weighting, price filter, and some more configuration options specific to the criteria group. |
daysCount required | string Enum: "ONE_DAY" "TWO_DAYS" "ONE_WEEK" "TWO_WEEKS" "ONE_MONTH" "TWO_MONTHS" Time range of historical visitor behavioral data to consider for generating recommendations. |
excludePurchases | boolean Default: false Whether items that were previously purchased by the visitor should be excluded from recommendations. |
key required | string Enum: "CURRENT" "LAST_VIEWED" "LAST_PURCHASED" "MOST_VIEWED" Recommendation key. Values:
|
minInventory | integer <int32> >= 0 Minimum number of pieces needed in stock for an item to be considered for recommendaton. |
partialDesignAllowed | boolean Default: false Whether design be shown when the number of recommendations are less than item slots in the design. |
type required | string Enum: "VIEWED_BOUGHT" "BOUGHT_CF" "VIEWED_CF" "SITE_AFFINITY" "SIMILARITY" Recommendation logic. Values:
|
Responses
Request samples
- Payload
A request body example of an item based criteria to be created/updated.
{- "name": "Items after buying road bike",
- "criteriaGroup": "ITEM",
- "type": "BOUGHT_CF",
- "key": "CURRENT",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "minInventory": 1,
- "partialDesignAllowed": false,
- "backupDisabled": false,
- "excludePurchases": false,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "inclusionRules": [
- {
- "attribute": "category",
- "operation": "contains",
- "source": {
- "name": "category",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}, - {
- "attribute": "category",
- "operation": "contains",
- "values": [
- "bike-road"
]
}
], - "pastBehaviorOrdinal": -1
}
}
Response samples
- 201
A response body example of an item based criteria.
{- "id": 2,
- "name": "Similar items",
- "criteriaGroup": "ITEM",
- "type": "BOUGHT_CF",
- "key": "CURRENT",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "minInventory": 1,
- "partialDesignAllowed": false,
- "backupDisabled": true,
- "excludePurchases": false,
- "enableCaching": true,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "inclusionRules": [
- {
- "attribute": "brand",
- "operation": "contains",
- "source": {
- "name": "brand",
- "defaultValue": "rei-coop",
- "type": "ENTITY"
}
}
], - "pastBehaviorOrdinal": -1
}
}
Get item criteria
Gets the item based criteria with the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of an item based criteria.
{- "id": 2,
- "name": "Similar items",
- "criteriaGroup": "ITEM",
- "type": "BOUGHT_CF",
- "key": "CURRENT",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "minInventory": 1,
- "partialDesignAllowed": false,
- "backupDisabled": true,
- "excludePurchases": false,
- "enableCaching": true,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "inclusionRules": [
- {
- "attribute": "brand",
- "operation": "contains",
- "source": {
- "name": "brand",
- "defaultValue": "rei-coop",
- "type": "ENTITY"
}
}
], - "pastBehaviorOrdinal": -1
}
}
Edit item criteria
Updates the item based criteria with new settings and configuration as specified and returns the updated criteria definition.
Authorizations:
path Parameters
id required | integer <int32> |
Request Body schema: application/vnd.adobe.target.v1+json
Item based criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
aggregation | string Default: "NONE" Enum: "NONE" "AGGREGATE" "ALL_OR_NOTHING" Whether recommendations should be shown solely based on the key (
If the key is |
backupDisabled | boolean Default: false Whether backup recommendations are disabled when criteria does not generate enough recommendations. |
backupInclusionFilteringEnabled | boolean Default: true Whether inclusion rules on the criteria should be applied to backup recommendations. |
required | object (CriteriaItemConfiguration) Object containing inclusion rules, attribute weighting, price filter, and some more configuration options specific to the criteria group. |
daysCount required | string Enum: "ONE_DAY" "TWO_DAYS" "ONE_WEEK" "TWO_WEEKS" "ONE_MONTH" "TWO_MONTHS" Time range of historical visitor behavioral data to consider for generating recommendations. |
excludePurchases | boolean Default: false Whether items that were previously purchased by the visitor should be excluded from recommendations. |
key required | string Enum: "CURRENT" "LAST_VIEWED" "LAST_PURCHASED" "MOST_VIEWED" Recommendation key. Values:
|
minInventory | integer <int32> >= 0 Minimum number of pieces needed in stock for an item to be considered for recommendaton. |
partialDesignAllowed | boolean Default: false Whether design be shown when the number of recommendations are less than item slots in the design. |
type required | string Enum: "VIEWED_BOUGHT" "BOUGHT_CF" "VIEWED_CF" "SITE_AFFINITY" "SIMILARITY" Recommendation logic. Values:
|
Responses
Request samples
- Payload
A request body example of an item based criteria to be created/updated.
{- "name": "Items after buying road bike",
- "criteriaGroup": "ITEM",
- "type": "BOUGHT_CF",
- "key": "CURRENT",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "minInventory": 1,
- "partialDesignAllowed": false,
- "backupDisabled": false,
- "excludePurchases": false,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "inclusionRules": [
- {
- "attribute": "category",
- "operation": "contains",
- "source": {
- "name": "category",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}, - {
- "attribute": "category",
- "operation": "contains",
- "values": [
- "bike-road"
]
}
], - "pastBehaviorOrdinal": -1
}
}
Response samples
- 200
A response body example of an item based criteria.
{- "id": 2,
- "name": "Similar items",
- "criteriaGroup": "ITEM",
- "type": "BOUGHT_CF",
- "key": "CURRENT",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "minInventory": 1,
- "partialDesignAllowed": false,
- "backupDisabled": true,
- "excludePurchases": false,
- "enableCaching": true,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "inclusionRules": [
- {
- "attribute": "brand",
- "operation": "contains",
- "source": {
- "name": "brand",
- "defaultValue": "rei-coop",
- "type": "ENTITY"
}
}
], - "pastBehaviorOrdinal": -1
}
}
Delete item criteria
Deletes the item based criteria referenced by the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of an item based criteria.
{- "id": 2,
- "name": "Similar items",
- "criteriaGroup": "ITEM",
- "type": "BOUGHT_CF",
- "key": "CURRENT",
- "aggregation": "NONE",
- "daysCount": "TWO_WEEKS",
- "minInventory": 1,
- "partialDesignAllowed": false,
- "backupDisabled": true,
- "excludePurchases": false,
- "enableCaching": true,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "inclusionRules": [
- {
- "attribute": "brand",
- "operation": "contains",
- "source": {
- "name": "brand",
- "defaultValue": "rei-coop",
- "type": "ENTITY"
}
}
], - "pastBehaviorOrdinal": -1
}
}
Popularity Criteria are criteria that generate popular items as recommendations. The recommendation key is top sellers, most viewed items or Analytics product report metric.
List popularity criteria
Gets all available popularity based criteria.
Authorizations:
query Parameters
offset | integer <int32> (offset) Number of resources to skip from start in the server list. If not specified, the response list will start from first available resource. |
limit | integer <int32> (limit) Number of resources to request. If not specified, the response will include all available resources. |
Responses
Response samples
- 200
A response body example of a list containing 3 popularity based criteria.
{- "offset": 0,
- "limit": 2147483647,
- "total": 2,
- "list": [
- {
- "id": 3422,
- "name": "Garage Top Viewed",
- "criteriaGroup": "POPULARITY",
- "type": "VIEWED",
- "aggregation": "NONE",
- "daysCount": "TWO_DAYS",
- "minInventory": 2,
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "datasource": "mboxes"
}
}, - {
- "id": 9321,
- "name": "Top sold by region",
- "criteriaGroup": "POPULARITY",
- "type": "SELLERS",
- "aggregation": "ALL_OR_NOTHING",
- "daysCount": "ONE_MONTH",
- "configuration": {
- "datasource": "mboxes",
- "grouping": {
- "type": "SEQUENTIAL",
- "attributes": [
- "user.city",
- "user.county",
- "user.state"
]
}
}
}
]
}
Create popularity criteria
Creates a new popularity based criteria as specified by the settings and configuration provided and returns the newly created criteria definition.
Authorizations:
Request Body schema: application/vnd.adobe.target.v1+json
Popularity based criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
aggregation | string Default: "NONE" Enum: "NONE" "AGGREGATE" "ALL_OR_NOTHING" Whether recommendations should be shown solely based on the key (
|
backupDisabled | boolean Default: false Whether backup recommendations are disabled when criteria does not generate enough recommendations. |
backupInclusionFilteringEnabled | boolean Default: true Whether inclusion rules on the criteria should be applied to backup recommendations. |
object (CriteriaPopularityConfiguration) Object containing inclusion rules, attribute weighting, price filter, and some more configuration options specific to the criteria group. | |
daysCount | string Enum: "ONE_DAY" "TWO_DAYS" "ONE_WEEK" "TWO_WEEKS" "ONE_MONTH" "TWO_MONTHS" Time range of historical visitor behavioral data to consider for generating recommendations. This field can not be used together with |
hoursCount | integer Time range of historical visitor behavioral data to consider for generating recommendations. This field can not be used together with |
excludePurchases | boolean Default: false Whether items that were previously purchased by the visitor should be excluded from recommendations. |
key | string Recommendation key. Values:
|
minInventory | integer <int32> >= 0 Minimum number of pieces needed in stock for an item to be considered for recommendaton. |
partialDesignAllowed | boolean Default: false Whether design be shown when the number of recommendations are less than item slots in the design. |
type required | string Enum: "SELLERS" "VIEWED" "METRIC" Recommendation logic. Values:
|
Responses
Request samples
- Payload
A request body example of an popularity based criteria to be created/updated.
{- "name": "Garage Top Viewed",
- "type": "VIEWED",
- "key": "customProfileAttribute",
- "aggregation": "NONE",
- "daysCount": "TWO_DAYS",
- "minInventory": 2,
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "datasource": "mboxes",
- "attribute": "user.name",
- "groupByEntityAttribute": "brand"
}
}
Response samples
- 201
A response body example of a popularity based criteria.
{- "id": 9321,
- "name": "Top sold by region",
- "criteriaGroup": "POPULARITY",
- "type": "VIEWED",
- "key": "customProfileAttribute",
- "aggregation": "ALL_OR_NOTHING",
- "daysCount": "ONE_MONTH",
- "configuration": {
- "datasource": "mboxes",
- "attribute": "user.name",
- "groupByEntityAttribute": "brand",
- "grouping": {
- "type": "SEQUENTIAL",
- "attributes": [
- "user.city",
- "user.county",
- "user.state"
]
}
}
}
Get popularity criteria
Gets the popularity based criteria with the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a popularity based criteria.
{- "id": 9321,
- "name": "Top sold by region",
- "criteriaGroup": "POPULARITY",
- "type": "VIEWED",
- "key": "customProfileAttribute",
- "aggregation": "ALL_OR_NOTHING",
- "daysCount": "ONE_MONTH",
- "configuration": {
- "datasource": "mboxes",
- "attribute": "user.name",
- "groupByEntityAttribute": "brand",
- "grouping": {
- "type": "SEQUENTIAL",
- "attributes": [
- "user.city",
- "user.county",
- "user.state"
]
}
}
}
Edit popularity criteria
Updates the popularity based criteria with new settings and configuration as specified and returns the updated criteria definition.
Authorizations:
path Parameters
id required | integer <int32> |
Request Body schema: application/vnd.adobe.target.v1+json
Popularity based criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
aggregation | string Default: "NONE" Enum: "NONE" "AGGREGATE" "ALL_OR_NOTHING" Whether recommendations should be shown solely based on the key (
|
backupDisabled | boolean Default: false Whether backup recommendations are disabled when criteria does not generate enough recommendations. |
backupInclusionFilteringEnabled | boolean Default: true Whether inclusion rules on the criteria should be applied to backup recommendations. |
object (CriteriaPopularityConfiguration) Object containing inclusion rules, attribute weighting, price filter, and some more configuration options specific to the criteria group. | |
daysCount | string Enum: "ONE_DAY" "TWO_DAYS" "ONE_WEEK" "TWO_WEEKS" "ONE_MONTH" "TWO_MONTHS" Time range of historical visitor behavioral data to consider for generating recommendations. This field can not be used together with |
hoursCount | integer Time range of historical visitor behavioral data to consider for generating recommendations. This field can not be used together with |
excludePurchases | boolean Default: false Whether items that were previously purchased by the visitor should be excluded from recommendations. |
key | string Recommendation key. Values:
|
minInventory | integer <int32> >= 0 Minimum number of pieces needed in stock for an item to be considered for recommendaton. |
partialDesignAllowed | boolean Default: false Whether design be shown when the number of recommendations are less than item slots in the design. |
type required | string Enum: "SELLERS" "VIEWED" "METRIC" Recommendation logic. Values:
|
Responses
Request samples
- Payload
A request body example of an popularity based criteria to be created/updated.
{- "name": "Garage Top Viewed",
- "type": "VIEWED",
- "key": "customProfileAttribute",
- "aggregation": "NONE",
- "daysCount": "TWO_DAYS",
- "minInventory": 2,
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "configuration": {
- "datasource": "mboxes",
- "attribute": "user.name",
- "groupByEntityAttribute": "brand"
}
}
Response samples
- 200
A response body example of a popularity based criteria.
{- "id": 9321,
- "name": "Top sold by region",
- "criteriaGroup": "POPULARITY",
- "type": "VIEWED",
- "key": "customProfileAttribute",
- "aggregation": "ALL_OR_NOTHING",
- "daysCount": "ONE_MONTH",
- "configuration": {
- "datasource": "mboxes",
- "attribute": "user.name",
- "groupByEntityAttribute": "brand",
- "grouping": {
- "type": "SEQUENTIAL",
- "attributes": [
- "user.city",
- "user.county",
- "user.state"
]
}
}
}
Delete popularity criteria
Deletes the popularity based criteria referenced by the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a popularity based criteria.
{- "id": 9321,
- "name": "Top sold by region",
- "criteriaGroup": "POPULARITY",
- "type": "VIEWED",
- "key": "customProfileAttribute",
- "aggregation": "ALL_OR_NOTHING",
- "daysCount": "ONE_MONTH",
- "configuration": {
- "datasource": "mboxes",
- "attribute": "user.name",
- "groupByEntityAttribute": "brand",
- "grouping": {
- "type": "SEQUENTIAL",
- "attributes": [
- "user.city",
- "user.county",
- "user.state"
]
}
}
}
Profile Attribute Criteria are criteria where recommendation is determined by an item that is stored in visitor's profile using either user.*
or profile.*
attributes. The profile attribute contains the item ID on which the recommendations are based.
List profile attribute criteria
Gets all available profile attribute based criteria.
Authorizations:
query Parameters
offset | integer <int32> (offset) Number of resources to skip from start in the server list. If not specified, the response list will start from first available resource. |
limit | integer <int32> (limit) Number of resources to request. If not specified, the response will include all available resources. |
Responses
Response samples
- 200
A response body example of a list containing 3 profile attribute based criteria.
{- "offset": 0,
- "limit": 2147483647,
- "total": 2,
- "list": [
- {
- "id": 1,
- "name": "city-bike-recs",
- "criteriaTitle": "Bike recommendations per city",
- "criteriaGroup": "PROFILEATTRIBUTE",
- "type": "VIEWED_CF",
- "aggregation": "NONE",
- "daysCount": "ONE_MONTH",
- "minInventory": 5,
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "configuration": {
- "attribute": "profile.city",
- "inclusionRules": [
- {
- "attribute": "city",
- "operation": "dynamicallyMatches"
}, - {
- "attribute": "category",
- "operation": "contains",
- "values": [
- "bike"
]
}
], - "datasource": "mboxes"
}
}, - {
- "id": 2,
- "name": "gender-recs",
- "criteriaTitle": "Generic recommendations based on gender",
- "criteriaGroup": "PROFILEATTRIBUTE",
- "type": "VIEWED_CF",
- "aggregation": "ALL_OR_NOTHING",
- "daysCount": "ONE_MONTH",
- "configuration": {
- "attribute": "profile.gender",
- "datasource": "mboxes"
}
}
]
}
Create profile attribute criteria
Creates a new profile attribute based criteria as specified by the settings and configuration provided and returns the newly created criteria definition.
Authorizations:
Request Body schema: application/vnd.adobe.target.v1+json
Profile attribute based criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
aggregation | string Default: "NONE" Enum: "NONE" "AGGREGATE" "ALL_OR_NOTHING" Whether recommendations should be shown solely based on the key (
|
backupDisabled | boolean Default: false Whether backup recommendations are disabled when criteria does not generate enough recommendations. |
backupInclusionFilteringEnabled | boolean Default: true Whether inclusion rules on the criteria should be applied to backup recommendations. |
required | object (CriteriaProfileAttributeConfiguration) Object containing inclusion rules, attribute weighting, price filter, and some more configuration options specific to the criteria group. |
daysCount required | string Enum: "ONE_DAY" "TWO_DAYS" "ONE_WEEK" "TWO_WEEKS" "ONE_MONTH" "TWO_MONTHS" Time range of historical visitor behavioral data to consider for generating recommendations. |
excludePurchases | boolean Default: false Whether items that were previously purchased by the visitor should be excluded from recommendations. |
minInventory | integer <int32> >= 0 Minimum number of pieces needed in stock for an item to be considered for recommendaton. |
partialDesignAllowed | boolean Default: false Whether design be shown when the number of recommendations are less than item slots in the design. |
type required | string Enum: "VIEWED_BOUGHT" "BOUGHT_CF" "VIEWED_CF" "SITE_AFFINITY" Recommendation logic. Values:
|
Responses
Request samples
- Payload
A request body example of an profile attribute based criteria to be created/updated.
{- "name": "city-bike-recs",
- "criteriaTitle": "Bike recommendations per city",
- "type": "VIEWED_CF",
- "aggregation": "NONE",
- "daysCount": "ONE_MONTH",
- "minInventory": 5,
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "configuration": {
- "attribute": "profile.city",
- "inclusionRules": [
- {
- "attribute": "city",
- "operation": "dynamicallyMatches"
}, - {
- "attribute": "category",
- "operation": "contains",
- "values": [
- "bike"
]
}
], - "datasource": "mboxes"
}
}
Response samples
- 201
A response body example of a profile attribute based criteria.
{- "id": 1,
- "name": "city-bike-recs",
- "criteriaTitle": "Bike recommendations per city",
- "criteriaGroup": "PROFILEATTRIBUTE",
- "type": "VIEWED_CF",
- "aggregation": "NONE",
- "daysCount": "ONE_MONTH",
- "minInventory": 5,
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "configuration": {
- "attribute": "profile.city",
- "inclusionRules": [
- {
- "attribute": "city",
- "operation": "dynamicallyMatches"
}, - {
- "attribute": "category",
- "operation": "contains",
- "values": [
- "bike"
]
}
], - "datasource": "mboxes"
}
}
Get profile attribute criteria
Gets the profile attribute based criteria with the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a profile attribute based criteria.
{- "id": 1,
- "name": "city-bike-recs",
- "criteriaTitle": "Bike recommendations per city",
- "criteriaGroup": "PROFILEATTRIBUTE",
- "type": "VIEWED_CF",
- "aggregation": "NONE",
- "daysCount": "ONE_MONTH",
- "minInventory": 5,
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "configuration": {
- "attribute": "profile.city",
- "inclusionRules": [
- {
- "attribute": "city",
- "operation": "dynamicallyMatches"
}, - {
- "attribute": "category",
- "operation": "contains",
- "values": [
- "bike"
]
}
], - "datasource": "mboxes"
}
}
Edit profile attribute criteria
Updates the profile attribute based criteria with new settings and configuration as specified and returns the updated criteria definition.
Authorizations:
path Parameters
id required | integer <int32> |
Request Body schema: application/vnd.adobe.target.v1+json
Profile attribute based criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
aggregation | string Default: "NONE" Enum: "NONE" "AGGREGATE" "ALL_OR_NOTHING" Whether recommendations should be shown solely based on the key (
|
backupDisabled | boolean Default: false Whether backup recommendations are disabled when criteria does not generate enough recommendations. |
backupInclusionFilteringEnabled | boolean Default: true Whether inclusion rules on the criteria should be applied to backup recommendations. |
required | object (CriteriaProfileAttributeConfiguration) Object containing inclusion rules, attribute weighting, price filter, and some more configuration options specific to the criteria group. |
daysCount required | string Enum: "ONE_DAY" "TWO_DAYS" "ONE_WEEK" "TWO_WEEKS" "ONE_MONTH" "TWO_MONTHS" Time range of historical visitor behavioral data to consider for generating recommendations. |
excludePurchases | boolean Default: false Whether items that were previously purchased by the visitor should be excluded from recommendations. |
minInventory | integer <int32> >= 0 Minimum number of pieces needed in stock for an item to be considered for recommendaton. |
partialDesignAllowed | boolean Default: false Whether design be shown when the number of recommendations are less than item slots in the design. |
type required | string Enum: "VIEWED_BOUGHT" "BOUGHT_CF" "VIEWED_CF" "SITE_AFFINITY" Recommendation logic. Values:
|
Responses
Request samples
- Payload
A request body example of an profile attribute based criteria to be created/updated.
{- "name": "city-bike-recs",
- "criteriaTitle": "Bike recommendations per city",
- "type": "VIEWED_CF",
- "aggregation": "NONE",
- "daysCount": "ONE_MONTH",
- "minInventory": 5,
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "configuration": {
- "attribute": "profile.city",
- "inclusionRules": [
- {
- "attribute": "city",
- "operation": "dynamicallyMatches"
}, - {
- "attribute": "category",
- "operation": "contains",
- "values": [
- "bike"
]
}
], - "datasource": "mboxes"
}
}
Response samples
- 200
A response body example of a profile attribute based criteria.
{- "id": 1,
- "name": "city-bike-recs",
- "criteriaTitle": "Bike recommendations per city",
- "criteriaGroup": "PROFILEATTRIBUTE",
- "type": "VIEWED_CF",
- "aggregation": "NONE",
- "daysCount": "ONE_MONTH",
- "minInventory": 5,
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "configuration": {
- "attribute": "profile.city",
- "inclusionRules": [
- {
- "attribute": "city",
- "operation": "dynamicallyMatches"
}, - {
- "attribute": "category",
- "operation": "contains",
- "values": [
- "bike"
]
}
], - "datasource": "mboxes"
}
}
Delete profile attribute criteria
Deletes the profile attribute based criteria referenced by the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a profile attribute based criteria.
{- "id": 1,
- "name": "city-bike-recs",
- "criteriaTitle": "Bike recommendations per city",
- "criteriaGroup": "PROFILEATTRIBUTE",
- "type": "VIEWED_CF",
- "aggregation": "NONE",
- "daysCount": "ONE_MONTH",
- "minInventory": 5,
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "configuration": {
- "attribute": "profile.city",
- "inclusionRules": [
- {
- "attribute": "city",
- "operation": "dynamicallyMatches"
}, - {
- "attribute": "category",
- "operation": "contains",
- "values": [
- "bike"
]
}
], - "datasource": "mboxes"
}
}
List recent criteria
Gets all available recent view based criteria.
Authorizations:
query Parameters
offset | integer <int32> (offset) Number of resources to skip from start in the server list. If not specified, the response list will start from first available resource. |
limit | integer <int32> (limit) Number of resources to request. If not specified, the response will include all available resources. |
Responses
Response samples
- 200
A response body example of a list containing 2 recent view based criteria.
{- "offset": 0,
- "limit": 2147483647,
- "total": 2,
- "list": [
- {
- "id": 1,
- "name": "Recently Viewed Products",
- "criteriaTitle": "Just Seen Items",
- "criteriaGroup": "RECENT",
- "minInventory": 1,
- "configuration": {
- "rankingRules": [ ]
}
}, - {
- "id": 2,
- "name": "Recently Viewed in Same Brand",
- "criteriaGroup": "RECENT",
- "minInventory": 1,
- "configuration": {
- "inclusionRules": [
- {
- "attribute": "brand",
- "operation": "dynamicallyMatches",
- "source": {
- "name": "brand",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}, - {
- "attribute": "value",
- "operation": "dynamicallyRanges",
- "lowRange": "1",
- "highRange": "99"
}
], - "rankingRules": [ ]
}
}
]
}
Create recent criteria
Creates a new recent view based criteria as specified by the settings and configuration provided and returns the newly created criteria definition.
Authorizations:
Request Body schema: application/vnd.adobe.target.v1+json
Recent view based criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
object (CriteriaRecentConfiguration) Object containing inclusion rules, attribute weighting, price filter, and some more configuration options specific to the criteria group. | |
minInventory | integer <int32> >= 0 Minimum number of pieces needed in stock for an item to be considered for recommendaton. |
excludePurchases | boolean Default: false Whether items that were previously purchased by the visitor should be excluded from recommendations. |
Responses
Request samples
- Payload
A request body example of a recent view based criteria to be created/updated.
{- "name": "Recently Viewed Products",
- "criteriaTitle": "Just Seen Items",
- "excludePurchases": true,
- "criteriaGroup": "RECENT",
- "minInventory": 3,
- "configuration": {
- "rankingRules": [ ]
}
}
Response samples
- 201
A response body example of a recent view based criteria.
{- "id": 2,
- "name": "Recently Viewed in Same Brand",
- "criteriaGroup": "RECENT",
- "excludePurchases": true,
- "minInventory": 1,
- "configuration": {
- "inclusionRules": [
- {
- "attribute": "brand",
- "operation": "dynamicallyMatches",
- "source": {
- "name": "brand",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}, - {
- "attribute": "value",
- "operation": "dynamicallyRanges",
- "lowRange": "1",
- "highRange": "99"
}
], - "rankingRules": [ ]
}
}
Get recent criteria
Gets the recent criteria with the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a recent view based criteria.
{- "id": 2,
- "name": "Recently Viewed in Same Brand",
- "criteriaGroup": "RECENT",
- "excludePurchases": true,
- "minInventory": 1,
- "configuration": {
- "inclusionRules": [
- {
- "attribute": "brand",
- "operation": "dynamicallyMatches",
- "source": {
- "name": "brand",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}, - {
- "attribute": "value",
- "operation": "dynamicallyRanges",
- "lowRange": "1",
- "highRange": "99"
}
], - "rankingRules": [ ]
}
}
Edit recent criteria
Updates the recent criteria with new settings and configuration as specified and returns the updated criteria definition.
Authorizations:
path Parameters
id required | integer <int32> |
Request Body schema: application/vnd.adobe.target.v1+json
Recent view based criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
object (CriteriaRecentConfiguration) Object containing inclusion rules, attribute weighting, price filter, and some more configuration options specific to the criteria group. | |
minInventory | integer <int32> >= 0 Minimum number of pieces needed in stock for an item to be considered for recommendaton. |
excludePurchases | boolean Default: false Whether items that were previously purchased by the visitor should be excluded from recommendations. |
Responses
Request samples
- Payload
A request body example of a recent view based criteria to be created/updated.
{- "name": "Recently Viewed Products",
- "criteriaTitle": "Just Seen Items",
- "excludePurchases": true,
- "criteriaGroup": "RECENT",
- "minInventory": 3,
- "configuration": {
- "rankingRules": [ ]
}
}
Response samples
- 200
A response body example of a recent view based criteria.
{- "id": 2,
- "name": "Recently Viewed in Same Brand",
- "criteriaGroup": "RECENT",
- "excludePurchases": true,
- "minInventory": 1,
- "configuration": {
- "inclusionRules": [
- {
- "attribute": "brand",
- "operation": "dynamicallyMatches",
- "source": {
- "name": "brand",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}, - {
- "attribute": "value",
- "operation": "dynamicallyRanges",
- "lowRange": "1",
- "highRange": "99"
}
], - "rankingRules": [ ]
}
}
Delete recent criteria
Deletes the recent view based criteria referenced by the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a recent view based criteria.
{- "id": 2,
- "name": "Recently Viewed in Same Brand",
- "criteriaGroup": "RECENT",
- "excludePurchases": true,
- "minInventory": 1,
- "configuration": {
- "inclusionRules": [
- {
- "attribute": "brand",
- "operation": "dynamicallyMatches",
- "source": {
- "name": "brand",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}, - {
- "attribute": "value",
- "operation": "dynamicallyRanges",
- "lowRange": "1",
- "highRange": "99"
}
], - "rankingRules": [ ]
}
}
A Sequence Criteria is a combination of multiple criteria. Such sequence of up to five criteria can be used to exercise greater control of recommendations. By using a criteria sequence, you can provide additional targeted recommendations, instead of using more generic backup recommendations, when a criteria doesn't return enough results to fill your design.
List sequence criteria
Gets all available sequence criteria.
Authorizations:
query Parameters
offset | integer <int32> (offset) Number of resources to skip from start in the server list. If not specified, the response list will start from first available resource. |
limit | integer <int32> (limit) Number of resources to request. If not specified, the response will include all available resources. |
Responses
Response samples
- 200
A response body example of a list containing 2 sequence criteria.
{- "offset": 0,
- "limit": 2147483647,
- "total": 3,
- "list": [
- {
- "id": 56,
- "name": "Top Dashboard Items",
- "criteriaTitle": "Top Dashboard Items",
- "criteriaGroup": "SEQUENCE",
- "backupDisabled": true,
- "sequence": [
- {
- "id": 332,
- "slotCount": 4
}, - {
- "id": 333
}
]
}, - {
- "id": 67,
- "name": "Freight Recs",
- "criteriaTitle": "Freight Recommendations",
- "criteriaGroup": "SEQUENCE",
- "backupDisabled": true,
- "sequence": [
- {
- "id": 345
}, - {
- "id": 346
}, - {
- "id": 348
}, - {
- "id": 349
}, - {
- "id": 350
}
]
}, - {
- "id": 71,
- "name": "Events Across",
- "criteriaTitle": "Garage Events",
- "criteriaGroup": "SEQUENCE",
- "backupDisabled": false,
- "partialDesignAllowed": true,
- "sequence": [
- {
- "id": 401
}, - {
- "id": 402
}, - {
- "id": 406
}
]
}
]
}
Create sequence criteria
Creates a new sequence criteria as specified by the settings, and single criteria IDs provided and returns the newly created criteria definition.
Authorizations:
Request Body schema: application/vnd.adobe.target.v1+json
Sequence criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
backupDisabled | boolean Default: false Whether backup recommendations are disabled when criteria does not generate enough recommendations. |
backupInclusionFilteringEnabled | boolean Default: true Whether inclusion rules on the criteria should be applied to backup recommendations. |
partialDesignAllowed | boolean Default: false Whether design be shown when the number of recommendations are less than item slots in the design. |
required | Array of objects [ 1 .. 5 ] items Criteria sequence represented by an array of criteria object IDs. |
Responses
Request samples
- Payload
A request body example of a sequence criteria to be created/updated.
{- "name": "Top Dashboard Items",
- "criteriaTitle": "Top Dashboard Items",
- "backupDisabled": true,
- "sequence": [
- {
- "id": 332,
- "slotCount": 4
}, - {
- "id": 333
}
]
}
Response samples
- 201
A response body example of a sequence criteria.
{- "id": 56,
- "name": "Top Dashboard Items",
- "criteriaTitle": "Top Dashboard Items",
- "criteriaGroup": "SEQUENCE",
- "backupDisabled": true,
- "sequence": [
- {
- "id": 332,
- "slotCount": 4
}, - {
- "id": 333
}
]
}
Get sequence criteria
Gets the sequence criteria with the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a sequence criteria.
{- "id": 56,
- "name": "Top Dashboard Items",
- "criteriaTitle": "Top Dashboard Items",
- "criteriaGroup": "SEQUENCE",
- "backupDisabled": true,
- "sequence": [
- {
- "id": 332,
- "slotCount": 4
}, - {
- "id": 333
}
]
}
Edit sequence criteria
Updates the sequence criteria with new settings and new single criteria IDs as specified and returns the updated criteria definition.
Authorizations:
path Parameters
id required | integer <int32> |
Request Body schema: application/vnd.adobe.target.v1+json
Sequence criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
backupDisabled | boolean Default: false Whether backup recommendations are disabled when criteria does not generate enough recommendations. |
backupInclusionFilteringEnabled | boolean Default: true Whether inclusion rules on the criteria should be applied to backup recommendations. |
partialDesignAllowed | boolean Default: false Whether design be shown when the number of recommendations are less than item slots in the design. |
required | Array of objects [ 1 .. 5 ] items Criteria sequence represented by an array of criteria object IDs. |
Responses
Request samples
- Payload
A request body example of a sequence criteria to be created/updated.
{- "name": "Top Dashboard Items",
- "criteriaTitle": "Top Dashboard Items",
- "backupDisabled": true,
- "sequence": [
- {
- "id": 332,
- "slotCount": 4
}, - {
- "id": 333
}
]
}
Response samples
- 200
A response body example of a sequence criteria.
{- "id": 56,
- "name": "Top Dashboard Items",
- "criteriaTitle": "Top Dashboard Items",
- "criteriaGroup": "SEQUENCE",
- "backupDisabled": true,
- "sequence": [
- {
- "id": 332,
- "slotCount": 4
}, - {
- "id": 333
}
]
}
Delete sequence criteria
Deletes the sequence criteria referenced by the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a sequence criteria.
{- "id": 56,
- "name": "Top Dashboard Items",
- "criteriaTitle": "Top Dashboard Items",
- "criteriaGroup": "SEQUENCE",
- "backupDisabled": true,
- "sequence": [
- {
- "id": 332,
- "slotCount": 4
}, - {
- "id": 333
}
]
}
User History Criteria are criteria based on visitor's browsing, viewing or purchasing history. It is generally referred to as "Recommended for You".
List user history criteria
Gets all available user history based criteria.
Authorizations:
query Parameters
offset | integer <int32> (offset) Number of resources to skip from start in the server list. If not specified, the response list will start from first available resource. |
limit | integer <int32> (limit) Number of resources to request. If not specified, the response will include all available resources. |
Responses
Response samples
- 200
A response body example of a list containing 3 user history criteria.
{- "offset": 2,
- "limit": 2147483647,
- "total": 3,
- "list": [
- {
- "id": 3,
- "name": "Recommend for you.",
- "criteriaTitle": "Items Recommended for you.",
- "criteriaGroup": "USERHISTORY",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "excludeViews": false
}, - {
- "id": 4,
- "name": "Recommend for you with minimum inventory.",
- "criteriaGroup": "USERHISTORY",
- "daysCount": "TWO_WEEKS",
- "minInventory": 5,
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "excludeViews": true
}, - {
- "id": 5,
- "name": "Recommend for you with Inclusion Rules.",
- "criteriaGroup": "USERHISTORY",
- "daysCount": "TWO_WEEKS",
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "excludeViews": true,
- "configuration": {
- "inclusionRulesKey": "LAST_PURCHASED",
- "inclusionRules": [
- {
- "attribute": "category",
- "operation": "contains",
- "source": {
- "name": "category",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}
]
}
}
]
}
Create user history criteria
Creates a new user history based criteria as specified in the request payload and returns the newly created user history definition.
Authorizations:
Request Body schema: application/vnd.adobe.target.v1+json
UserHistory based criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
backupDisabled | boolean Default: false Whether backup recommendations are disabled when criteria does not generate enough recommendations. |
backupInclusionFilteringEnabled | boolean Default: true Whether inclusion rules on the criteria should be applied to backup recommendations. |
object (CriteriaUserHistoryConfiguration) | |
daysCount required | string Enum: "ONE_DAY" "TWO_DAYS" "ONE_WEEK" "TWO_WEEKS" "ONE_MONTH" "TWO_MONTHS" Time range of historical visitor behavioral data to consider for generating recommendations. |
excludePurchases | boolean Default: false Whether items that were previously purchased by the visitor should be excluded from recommendations. |
minInventory | integer <int32> >= 0 Minimum number of pieces needed in stock for an item to be considered for recommendaton. |
partialDesignAllowed | boolean Default: false Whether design be shown when the number of recommendations are less than item slots in the design. |
excludeViews | boolean Default: false Whether items that were previously viewed by the visitor should be excluded from recommendations. |
Responses
Request samples
- Payload
A request body example of a user history based criteria to be created/updated.
{- "name": "Recommend for you.",
- "criteriaTitle": "Recommend for you with Inclusion Rules",
- "daysCount": "TWO_WEEKS",
- "minInventory": 5,
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "excludeViews": true,
- "configuration": {
- "datasources": "mboxes",
- "inclusionRulesKey": "LAST_PURCHASED",
- "priceRange": {
- "min": 10,
- "max": 50
}, - "inclusionRules": [
- {
- "attribute": "category",
- "operation": "equals",
- "source": {
- "name": "category",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}
]
}
}
Response samples
- 201
A response body example of a user history based criteria.
{- "id": 3,
- "name": "Recommend for you.",
- "criteriaTitle": "Recommend for you with Inclusion Rules",
- "criteriaGroup": "USERHISTORY",
- "daysCount": "TWO_WEEKS",
- "minInventory": 5,
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "excludeViews": false,
- "configuration": {
- "priceRange": {
- "min": 10,
- "max": 50
}, - "datasource": "mboxes",
- "inclusionRulesKey": "LAST_PURCHASED",
- "inclusionRules": [
- {
- "attribute": "category",
- "operation": "equals",
- "source": {
- "name": "category",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}
]
}
}
Get user history criteria
Gets the user history based criteria with the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a user history based criteria.
{- "id": 3,
- "name": "Recommend for you.",
- "criteriaTitle": "Recommend for you with Inclusion Rules",
- "criteriaGroup": "USERHISTORY",
- "daysCount": "TWO_WEEKS",
- "minInventory": 5,
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "excludeViews": false,
- "configuration": {
- "priceRange": {
- "min": 10,
- "max": 50
}, - "datasource": "mboxes",
- "inclusionRulesKey": "LAST_PURCHASED",
- "inclusionRules": [
- {
- "attribute": "category",
- "operation": "equals",
- "source": {
- "name": "category",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}
]
}
}
Edit user history criteria
Updates the user history based criteria with new data as specified in request payload and returns the updated criteria definition.
Authorizations:
path Parameters
id required | integer <int32> |
Request Body schema: application/vnd.adobe.target.v1+json
UserHistory based criteria to be created/updated
criteriaTitle | string <= 250 characters Displayed in the design using variable |
name required | string <= 250 characters Unique name of the criteria. |
description | string <= 1000 characters |
backupDisabled | boolean Default: false Whether backup recommendations are disabled when criteria does not generate enough recommendations. |
backupInclusionFilteringEnabled | boolean Default: true Whether inclusion rules on the criteria should be applied to backup recommendations. |
object (CriteriaUserHistoryConfiguration) | |
daysCount required | string Enum: "ONE_DAY" "TWO_DAYS" "ONE_WEEK" "TWO_WEEKS" "ONE_MONTH" "TWO_MONTHS" Time range of historical visitor behavioral data to consider for generating recommendations. |
excludePurchases | boolean Default: false Whether items that were previously purchased by the visitor should be excluded from recommendations. |
minInventory | integer <int32> >= 0 Minimum number of pieces needed in stock for an item to be considered for recommendaton. |
partialDesignAllowed | boolean Default: false Whether design be shown when the number of recommendations are less than item slots in the design. |
excludeViews | boolean Default: false Whether items that were previously viewed by the visitor should be excluded from recommendations. |
Responses
Request samples
- Payload
A request body example of a user history based criteria to be created/updated.
{- "name": "Recommend for you.",
- "criteriaTitle": "Recommend for you with Inclusion Rules",
- "daysCount": "TWO_WEEKS",
- "minInventory": 5,
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "excludeViews": true,
- "configuration": {
- "datasources": "mboxes",
- "inclusionRulesKey": "LAST_PURCHASED",
- "priceRange": {
- "min": 10,
- "max": 50
}, - "inclusionRules": [
- {
- "attribute": "category",
- "operation": "equals",
- "source": {
- "name": "category",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}
]
}
}
Response samples
- 200
A response body example of a user history based criteria.
{- "id": 3,
- "name": "Recommend for you.",
- "criteriaTitle": "Recommend for you with Inclusion Rules",
- "criteriaGroup": "USERHISTORY",
- "daysCount": "TWO_WEEKS",
- "minInventory": 5,
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "excludeViews": false,
- "configuration": {
- "priceRange": {
- "min": 10,
- "max": 50
}, - "datasource": "mboxes",
- "inclusionRulesKey": "LAST_PURCHASED",
- "inclusionRules": [
- {
- "attribute": "category",
- "operation": "equals",
- "source": {
- "name": "category",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}
]
}
}
Delete user history criteria
Deletes the user history based criteria referenced by the given ID.
Authorizations:
path Parameters
id required | integer <int32> |
Responses
Response samples
- 200
A response body example of a user history based criteria.
{- "id": 3,
- "name": "Recommend for you.",
- "criteriaTitle": "Recommend for you with Inclusion Rules",
- "criteriaGroup": "USERHISTORY",
- "daysCount": "TWO_WEEKS",
- "minInventory": 5,
- "partialDesignAllowed": true,
- "backupDisabled": false,
- "excludePurchases": true,
- "backupInclusionFilteringEnabled": true,
- "excludeViews": false,
- "configuration": {
- "priceRange": {
- "min": 10,
- "max": 50
}, - "datasource": "mboxes",
- "inclusionRulesKey": "LAST_PURCHASED",
- "inclusionRules": [
- {
- "attribute": "category",
- "operation": "equals",
- "source": {
- "name": "category",
- "type": "ENTITY",
- "excludeAllWhenEmpty": true
}
}
]
}
}
Search Catalog Entities
Searches across all the entities in a given client and environment based on provided match criteria.
Note this POST request does not create any resource. The endpoint is not a resource but rather it is simply a method for searching.
Authorizations:
Request Body schema: application/vnd.adobe.target.v1+json
Catalog Search
required | object (SearchMeta) |
required | simple double (object) or simple integer (object) or simple string (object) or compound search (object) (SearchQuery) |
Responses
Request samples
- Payload
{- "meta": {
- "environmentId": 1776,
- "displayFields": [
- "description",
- "price"
]
}, - "query": {
- "type": "simple",
- "queryFields": [
- "id",
- "name",
- "description"
], - "matchValue": "home",
- "operator": "contains"
}
}
Response samples
- 200
{- "timeMs": 1701,
- "hits": [
- {
- "id": 602214076,
- "category": [
- "household goods",
- "restroom",
- "paper products"
], - "value": 3.14,
- "name": "bathroom tissue"
}, - {
- "id": 186282,
- "value": 2.718,
- "name": "hand sanitizer",
- "inventory": 86400
}
], - "start": 1
}