Acquia Lift Profile Manager version v1
https://{liftProfileManagerURL}/{account_id}
- liftProfileManagerURL: required(string)
base url for rest servlet
- account_id: required(string)
The account identifier of the customer
Accounts
An account of the Profile Manager dashboard. The URLs for this API endpoint are: | https://{liftProfileManagerURL}/api/v1/accounts and | https://{liftProfileManagerURL}/api/v1/accounts/{accountId}
Get a list of accounts accessible to the current user context.
get /accounts
Get a list of accounts accessible to the current user context.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
HTTP status code 200
At least one customer account was able to be retrieved.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/accounts_get_response.json",
"title": "Accounts",
"type": "object",
"item": {
"title": "Accounts GET response",
"type": "object",
"required": [
"status"
],
"properties": {
"status": {
"description": "Accounts request status. SUCCESS if succeeded, FAILURE otherwise",
"type": "string"
},
"items": {
"description": "List of accounts",
"type": "array",
"item": {
"description": "Account object that is created.",
"type": "object",
"properties": {
"accountId": {
"description": "Account UID.",
"type": "string",
"maxLength": 20
},
"name": {
"description": "Full name of the account.",
"type": "string",
"maxLength": 200
},
"description": {
"description": "Description of the account",
"type": "string",
"maxLength": 200
},
"timezone": {
"description": "Time zone of the customer",
"type": "string",
"maxLength": 200
},
"identificationMethod": {
"description": "The method used to identify the customer account: Account ID or CCI UUID",
"type": "string"
},
"cciSubscriptionUUID": {
"description": "The value for the subscription if CCI UUID is used to identify the customer account",
"type": "string"
},
"cciEnvironment": {
"description": "The value for the environment if CCI UUID is used to identify the customer account",
"type": "string"
},
"licenseId": {
"description": "License the customer is using",
"type": "int"
},
"restApiGetSegmentsSecured": {
"description": "If enabled, HMAC authentication is required to use the segments endpoint",
"type": "boolean"
},
"restApiPostEventImportSecured": {
"description": "If enabled, HMAC authentication is required to use the event import endpoint",
"type": "boolean"
},
"restApiGetFileExportSecured": {
"description": "If enabled, HMAC authentication is required to use the file export endpoint",
"type": "boolean"
},
"restApiGetVisitorQuerySecured": {
"description": "If enabled, HMAC authentication is required to use the visitor query endpoint",
"type": "boolean"
},
"awsAccessKeyId": {
"description": "The user's access key for accessing S3.",
"type": "string"
},
"awsSecretAccessKey": {
"description": "The user's secret access key for accessing S3.",
"type": "string"
},
"ipAddressMasked": {
"description": "If the IP address of the user should be masked",
"type": "boolean"
},
"beta": {
"description": "If the new Lift 4 UX (and functionality) is enabled",
"type": "boolean"
},
"nextGenPerz": {
"description": "If the nextGenPerz functionality is enabled",
"type": "boolean"
},
"links": {
"description": "Reference link for current resource",
"type": "object",
"properties": {
"rel": {
"description": "The object that the link is related to.",
"type": "string"
},
"href": {
"description": "Reference link for current object.",
"type": "string"
}
}
}
}
}
}
}
}
}
Example:
{
"status": "SUCCESS",
"accounts": [
{
"name": "My account name",
"description": "This is an example account",
"timezone": "ACT",
"accountId": "ACCOUNT_EXAMPLE",
"licenseId": 7,
"restApiGetSegmentsSecured": true,
"restApiPostEventImportSecured": true,
"restApiGetFileExportSecured": true,
"restApiGetVisitorQuerySecured": true,
"awsAccessKeyId": "ABCDEFGHIJKLMNOPQRST",
"awsSecretAccessKey": "+1A/aBcD23/4EFG4HIjKlmNOPQ5Rs/TuvWXY67zA",
"ipAddressMasked": false,
"identificationMethod": "Account ID",
"cciSubscriptionUUID": null,
"cciEnvironment": null,
"nextGenPerz": true,
"beta": true,
"links": [
{
"rel": "self",
"href": "https://us-east-1-api.lift.acquia.com/api/v1/accounts/ACCOUNT_EXAMPLE"
}
]
}
]
}
HTTP status code 403
Account resource is forbidden or inaccessible to current user context.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/accounts_4xx.json",
"title": "Accounts",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Accounts endpoint request response when it has failed.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for accounts POST/PUT/GET/DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the accounts endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
{
"status": "FAILED",
"errors": [
{
"statusCode": "MISSING_SECURITY_RESOURCE_PERMISSION",
"message": "Missing security resource permission"
}
]
}
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
An individual customer account.
Get an account.
Update a specific account. License cannot be upgraded.
get /accounts/{account_id}
Get an account.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
URI Parameters
- account_id: required(string)
The UID for the customer account.
HTTP status code 200
The specified customer account was able to be retrieved.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/accounts_get_response.json",
"title": "Accounts",
"type": "object",
"item": {
"title": "Accounts GET response",
"type": "object",
"required": [
"status"
],
"properties": {
"status": {
"description": "Accounts request status. SUCCESS if succeeded, FAILURE otherwise",
"type": "string"
},
"items": {
"description": "List of accounts",
"type": "array",
"item": {
"description": "Account object that is created.",
"type": "object",
"properties": {
"accountId": {
"description": "Account UID.",
"type": "string",
"maxLength": 20
},
"name": {
"description": "Full name of the account.",
"type": "string",
"maxLength": 200
},
"description": {
"description": "Description of the account",
"type": "string",
"maxLength": 200
},
"timezone": {
"description": "Time zone of the customer",
"type": "string",
"maxLength": 200
},
"identificationMethod": {
"description": "The method used to identify the customer account: Account ID or CCI UUID",
"type": "string"
},
"cciSubscriptionUUID": {
"description": "The value for the subscription if CCI UUID is used to identify the customer account",
"type": "string"
},
"cciEnvironment": {
"description": "The value for the environment if CCI UUID is used to identify the customer account",
"type": "string"
},
"licenseId": {
"description": "License the customer is using",
"type": "int"
},
"restApiGetSegmentsSecured": {
"description": "If enabled, HMAC authentication is required to use the segments endpoint",
"type": "boolean"
},
"restApiPostEventImportSecured": {
"description": "If enabled, HMAC authentication is required to use the event import endpoint",
"type": "boolean"
},
"restApiGetFileExportSecured": {
"description": "If enabled, HMAC authentication is required to use the file export endpoint",
"type": "boolean"
},
"restApiGetVisitorQuerySecured": {
"description": "If enabled, HMAC authentication is required to use the visitor query endpoint",
"type": "boolean"
},
"awsAccessKeyId": {
"description": "The user's access key for accessing S3.",
"type": "string"
},
"awsSecretAccessKey": {
"description": "The user's secret access key for accessing S3.",
"type": "string"
},
"ipAddressMasked": {
"description": "If the IP address of the user should be masked",
"type": "boolean"
},
"beta": {
"description": "If the new Lift 4 UX (and functionality) is enabled",
"type": "boolean"
},
"nextGenPerz": {
"description": "If the nextGenPerz functionality is enabled",
"type": "boolean"
},
"links": {
"description": "Reference link for current resource",
"type": "object",
"properties": {
"rel": {
"description": "The object that the link is related to.",
"type": "string"
},
"href": {
"description": "Reference link for current object.",
"type": "string"
}
}
}
}
}
}
}
}
}
Example:
{
"status": "SUCCESS",
"accounts": [
{
"name": "My account name",
"description": "This is an example account",
"timezone": "ACT",
"accountId": "ACCOUNT_EXAMPLE",
"licenseId": 7,
"restApiGetSegmentsSecured": true,
"restApiPostEventImportSecured": true,
"restApiGetFileExportSecured": true,
"restApiGetVisitorQuerySecured": true,
"awsAccessKeyId": "ABCDEFGHIJKLMNOPQRST",
"awsSecretAccessKey": "+1A/aBcD23/4EFG4HIjKlmNOPQ5Rs/TuvWXY67zA",
"ipAddressMasked": false,
"identificationMethod": "Account ID",
"cciSubscriptionUUID": null,
"cciEnvironment": null,
"nextGenPerz": true,
"beta": true,
"links": [
{
"rel": "self",
"href": "https://us-east-1-api.lift.acquia.com/api/v1/accounts/ACCOUNT_EXAMPLE"
}
]
}
]
}
HTTP status code 403
Account resource is forbidden or inaccessible to current user context.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/accounts_4xx.json",
"title": "Accounts",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Accounts endpoint request response when it has failed.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for accounts POST/PUT/GET/DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the accounts endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
{
"status": "FAILED",
"errors": [
{
"statusCode": "MISSING_SECURITY_RESOURCE_PERMISSION",
"message": "Missing security resource permission"
}
]
}
HTTP status code 404
Account not found.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/accounts_4xx.json",
"title": "Accounts",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Accounts endpoint request response when it has failed.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for accounts POST/PUT/GET/DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the accounts endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
{
"status": "FAILED",
"errors": [
{
"statusCode": "ACCOUNT_NOT_FOUND",
"message": "Account not found"
}
]
}
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
put /accounts/{account_id}
Update a specific account. License cannot be upgraded.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
URI Parameters
- account_id: required(string)
The UID for the customer account.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/account_put_payload.json",
"required": [
"name",
"description",
"timezone"
],
"properties": {
"name": {
"description": "Name of the account",
"type": "string",
"maxLength": 200
},
"description": {
"description": "Description of the account",
"type": "string",
"maxLength": 200
},
"timezone": {
"description": "Timezone of the customer",
"type": "string",
"maxLength": 200
},
"restApiGetSegmentsSecured": {
"description": "If enabled, HMAC authentication is required to use the segments endpoint",
"type": "boolean"
},
"restApiPostEventImportSecured": {
"description": "If enabled, HMAC authentication is required to use the event import endpoint",
"type": "boolean"
},
"restApiGetFileExportSecured": {
"description": "If enabled, HMAC authentication is required to use the file export endpoint",
"type": "boolean"
},
"restApiGetVisitorQuerySecured": {
"description": "If enabled, HMAC authentication is required to use the visitor query endpoint",
"type": "boolean"
},
"ipAddressMasked": {
"type": "boolean"
},
"beta": {
"type": "boolean"
},
"nextGenPerz": {
"description": "If the nextGenPerz functionality is enabled",
"type": "boolean"
}
}
}
Example:
{
"name": "Example account name",
"description": "This is an example account",
"timezone": "US/Eastern",
"restApiGetSegmentsSecured": false,
"restApiPostEventImportSecured": false,
"restApiGetFileExportSecured": false,
"restApiGetVisitorQuerySecured": false,
"ipAddressMasked": true,
"beta": true,
"nextGenPerz": true
}
HTTP status code 200
The specified customer account was updated successfully.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/accounts_post_put_response.json",
"title": "Accounts",
"type": "object",
"item": {
"title": "Accounts POST/PUT response",
"type": "object",
"required": [
"status"
],
"properties": {
"status": {
"description": "Accounts request status. SUCCESS if succeeded, FAILURE otherwise",
"type": "string"
},
"errors": {
"description": "List of errors upon status FAILURE",
"type": "array",
"items": {
"description": "Error object containing information about failure",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 0
},
"items": {
"description": "List of accounts",
"type": "array",
"required": [
"id",
"name",
"timezone",
"accountId"
],
"item": {
"description": "Account object that is created.",
"type": "object",
"properties": {
"accountId": {
"description": "Account UID.",
"type": "string",
"maxLength": 20
},
"name": {
"description": "Full name of the account.",
"type": "string",
"maxLength": 200
},
"description": {
"description": "Description of the account",
"type": "string",
"maxLength": 200
},
"timezone": {
"description": "Timezone of the customer",
"type": "string",
"maxLength": 200
},
"identificationMethod": {
"description": "The method used to identify the customer account: Account ID or CCI UUID",
"type": "string"
},
"cciSubscriptionUUID": {
"description": "The value for the subscription if CCI UUID is used to identify the customer account",
"type": "string"
},
"cciEnvironment": {
"description": "The value for the environment if CCI UUID is used to identify the customer account",
"type": "string"
},
"licenseId": {
"description": "License the customer is using",
"type": "int"
},
"restApiGetSegmentsSecured": {
"description": "If enabled, HMAC authentication is required to use the segments endpoint",
"type": "boolean"
},
"restApiPostEventImportSecured": {
"description": "If enabled, HMAC authentication is required to use the event import endpoint",
"type": "boolean"
},
"restApiGetFileExportSecured": {
"description": "If enabled, HMAC authentication is required to use the file export endpoint",
"type": "boolean"
},
"restApiGetVisitorQuerySecured": {
"description": "If enabled, HMAC authentication is required to use the visitor query endpoint",
"type": "boolean"
},
"awsAccessKeyId": {
"description": "The user's access key for accessing S3.",
"type": "string"
},
"awsSecretAccessKey": {
"description": "The user's secret access key for accessing S3.",
"type": "string"
},
"ipAddressMasked": {
"description": "If the IP address of the user should be masked",
"type": "boolean"
},
"beta": {
"description": "If the new Lift 4 UX (and functionality) is enabled",
"type": "boolean"
},
"nextGenPerz": {
"description": "If the nextGenPerz functionality is enabled",
"type": "boolean"
},
"links": {
"description": "Reference link for current resource",
"type": "object",
"properties": {
"rel": {
"description": "The object that the link is related to.",
"type": "string"
},
"href": {
"description": "Reference link for current object.",
"type": "string"
}
}
}
}
}
}
}
}
}
Example:
{
"status": "SUCCESS",
"accounts": [
{
"name": "My account name",
"description": "This is an example account",
"timezone": "ACT",
"accountId": "ACCOUNT_EXAMPLE",
"licenseId": 7,
"restApiGetSegmentsSecured": true,
"restApiPostEventImportSecured": true,
"restApiGetFileExportSecured": true,
"restApiGetVisitorQuerySecured": true,
"awsAccessKeyId": "ABCDEFGHIJKLMNOPQRST",
"awsSecretAccessKey": "+1A/aBcD23/4EFG4HIjKlmNOPQ5Rs/TuvWXY67zA",
"ipAddressMasked": false,
"identificationMethod": "Account ID",
"cciSubscriptionUUID": null,
"cciEnvironment": null,
"nextGenPerz": true,
"beta": true,
"links": [
{
"rel": "self",
"href": "https://us-east-1-api.lift.acquia.com/api/v1/accounts/ACCOUNT_EXAMPLE"
}
]
}
]
}
HTTP status code 400
Invalid parameters, including licenseId, cciSubscriptionUUID, cciEnvironment, and/or identificationMethod.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/accounts_4xx.json",
"title": "Accounts",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Accounts endpoint request response when it has failed.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for accounts POST/PUT/GET/DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the accounts endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
{
"status": "FAILURE",
"errors": [
{
"statusCode": "MISSING_NAME",
"message": "Missing name for the request"
},
{
"statusCode": "MISSING_TIMEZONE",
"message": "Missing timezone for the request"
},
{
"statusCode": "MISSING_DESCRIPTION",
"message": "Missing description for the request"
},
{
"statusCode": "UNSUPPORTED_ARGUMENT",
"message": "Unsupported Argument - Identification Method"
},
{
"statusCode": "UNSUPPORTED_ARGUMENT",
"message": "Unsupported Argument - CCI Subscription UUID"
},
{
"statusCode": "UNSUPPORTED_ARGUMENT",
"message": "Unsupported Argument - CCI Environment"
},
{
"statusCode": "UNSUPPORTED_ARGUMENT",
"message": "Unsupported Argument - License ID"
},
{
"statusCode": "INVALID_DESCRIPTION_LENGTH",
"message": "Invalid description - String length exceeds limit"
}
]
}
HTTP status code 403
Account does not match user context.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/accounts_4xx.json",
"title": "Accounts",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Accounts endpoint request response when it has failed.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for accounts POST/PUT/GET/DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the accounts endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
{
"status": "FAILED",
"errors": [
{
"statusCode": "MISSING_SECURITY_RESOURCE_PERMISSION",
"message": "Missing security resource permission"
}
]
}
HTTP status code 404
Account not found.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/accounts_4xx.json",
"title": "Accounts",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Accounts endpoint request response when it has failed.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for accounts POST/PUT/GET/DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the accounts endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
{
"status": "FAILED",
"errors": [
{
"statusCode": "ACCOUNT_NOT_FOUND",
"message": "Account not found"
}
]
}
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
Capture
Capture API accepts captures and returns segments and viewed content matched by the captures.
Send capture data for a visitor's interaction with the site and return any matched segments and viewed content.
post /capture
Send capture data for a visitor's interaction with the site and return any matched segments and viewed content.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/capture_payload.json",
"properties": {
"touch_identifier": {
"type": "string",
"maxLength": 22,
"description": "Internal identifier for the touch, if this field is left empty, lift will generate a touch identifier and include it in the response."
},
"identity": {
"type": "string",
"maxLength": 200,
"description": "Visitor's primary identity information."
},
"identity_source": {
"type": "string",
"maxLength": 200,
"description": "Type of visitor's primary identity information. Specific string (account, email, facebook, twitter, tracking, name, amp) or custom identifier type."
},
"do_not_track": {
"type": "boolean",
"default": false,
"description": "Flag to indicate whether the person should not be tracked."
},
"return_segments": {
"type": "boolean",
"default": false,
"description": "Flag to indicate whether the response should include matched segment information."
},
"return_content_views": {
"type": "boolean",
"default": false,
"description": "Flag to indicate whether the response should include matched content UUIDs."
},
"site_id": {
"type": "string",
"maxLength": 20,
"description": "The customer site matching external_site_id in the configuration database. Used for filtering segments to evaluate and the default site_id for captures. If not specified then the last capture is used to calculate the site_id for filtering segments."
},
"captures": {
"type": "array",
"items": {
"title": "Capture",
"type": "object",
"required": [
"event_name",
"event_source"
],
"patternProperties": {
"^(person|event)_udf([1-9]|[1-4][0-9]|50)$": {
"type": "string",
"maxLength": 1000,
"description": "Custom fields for person/event."
},
"^(touch)_udf([1-9]|1[0-9]|20)$": {
"type": "string",
"maxLength": 1000,
"description": "Custom fields for touch."
}
},
"properties": {
"event_name": {
"type": "string",
"maxLength": 200,
"description": "Event name corresponding to the captured information - the event type matching this event name must match the master list of events created in Acquia Lift Profile Manager (default or custom)."
},
"event_source": {
"type": "string",
"maxLength": 100,
"description": "Source of the event - can be used to pass event data from tools you have set up to send data to Acquia Lift Profile Manager. The default Acquia Lift Profile Manager value is web; depending on your website's configuration, examples may include csrtool1 and promo1."
},
"event_date": {
"type": "string",
"pattern": "^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T(0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]:[0-5][0-9].[0-9]{1,3}Z$",
"description": "Event date and time (UTC) (e.g., 2015-11-05T21:01:42.239Z)."
},
"identities": {
"type": "object",
"items": {
"title": "Map<String,String>",
"patternProperties": {
".{1,}": {
"type": "string",
"maxLength": 200
}
}
},
"uniqueItems": true,
"description": "Additional identity information, with identities as keys and identity sources as values (examples include \"identities\":{\"john.smith@acquia.com\":\"email\", \"John Smith\":\"name\"})."
},
"url": {
"type": "string",
"maxLength": 2000,
"description": "Event's URL."
},
"site_id": {
"type": "string",
"maxLength": 20,
"description": "The customer site matching external_site_id in the configuration database."
},
"referral_url": {
"type": "string",
"maxLength": 4000,
"description": "Referrer's URL."
},
"content_title": {
"type": "string",
"maxLength": 200,
"description": "Page title."
},
"content_uuid": {
"type": "string",
"maxLength": 1000,
"description": "The content hub UUID associated with a content view and click-through events (or other custom events)"
},
"user_agent": {
"type": "string",
"maxLength": 2000,
"description": "Visitor's user agent."
},
"platform": {
"type": "string",
"maxLength": 50,
"description": "Visitor's platform."
},
"ip_address": {
"type": "string",
"maxLength": 45,
"description": "Visitor's IP address (supports both IPv4 and IPv6 addresses)."
},
"persona": {
"type": "string",
"maxLength": 1000,
"description": "User-defined category into which a visitor fits, based on their viewing of particular content."
},
"engagement_score": {
"type": "integer",
"description": "The number that you have chosen to signify the importance of a visitor's interest in an event."
},
"personalization_name": {
"type": "string",
"maxLength": 1000,
"description": "Name of personalization associated with an event."
},
"personalization_machine_name": {
"type": "string",
"maxLength": 1000,
"description": "Machine name of personalization associated with an event."
},
"personalization_chosen_variation": {
"type": "string",
"maxLength": 1000,
"description": "The variation (decision) chosen for an event."
},
"personalization_audience_name": {
"type": "string",
"maxLength": 1000,
"description": "The name of the audience."
},
"personalization_decision_policy": {
"type": "string",
"maxLength": 1000,
"description": "The decision policy used - for example, explore or target."
},
"personalization_goal_name": {
"type": "string",
"maxLength": 1000,
"description": "The name of the goal reached."
},
"personalization_goal_value": {
"type": "string",
"maxLength": 1000,
"description": "The value of the goal reached."
},
"decision_slot_id": {
"type": "string",
"maxLength": 1000,
"description": "Decision Slot Id"
},
"decision_slot_name": {
"type": "string",
"maxLength": 1000,
"description": "Decision Slot Name"
},
"decision_rule_id": {
"type": "string",
"maxLength": 1000,
"description": "Decision Rule Id"
},
"decision_rule_name": {
"type": "string",
"maxLength": 1000,
"description": "Decision Rule Name"
},
"decision_rule_segment_id": {
"type": "string",
"maxLength": 1000,
"description": "Decision Rule Segment Id"
},
"decision_rule_segment_name": {
"type": "string",
"maxLength": 1000,
"description": "Decision Rule Segment Name"
},
"decision_rule_type": {
"type": "string",
"maxLength": 1000,
"description": "Decision Rule Type"
},
"decision_content_id": {
"type": "string",
"maxLength": 1000,
"description": "Decision Content Id"
},
"decision_content_name": {
"type": "string",
"maxLength": 1000,
"description": "Decision Content Name"
},
"decision_goal_id": {
"type": "string",
"maxLength": 1000,
"description": "Decision Goal Id"
},
"decision_goal_name": {
"type": "string",
"maxLength": 1000,
"description": "Decision Goal Name"
},
"decision_goal_value": {
"type": "string",
"maxLength": 1000,
"description": "Decision Goal Value"
},
"decision_view_mode": {
"type": "string",
"maxLength": 1000,
"description": "Decision View Mode"
},
"decision_policy": {
"type": "string",
"maxLength": 1000,
"description": "Decision Policy"
},
"capture_identifier": {
"type": "string",
"maxLength": 22,
"description": "Unique identifier for the capture."
},
"client_timezone": {
"type": "string",
"maxLength": 100,
"description": "Client timezone."
},
"javascript_version": {
"type": "string",
"maxLength": 10,
"description": "Version of the javascript that generated the capture."
},
"post_id": {
"type": "string",
"maxLength": 22,
"description": "Post id of an article."
},
"content_id": {
"type": "string",
"maxLength": 22,
"description": "Content id of an article."
},
"content_type": {
"type": "string",
"maxLength": 200,
"description": "Content-type to which a piece of visitor-viewed content belongs."
},
"content_section": {
"type": "string",
"maxLength": 1000,
"description": "Content section of an article."
},
"content_keywords": {
"type": "string",
"maxLength": 1000,
"description": "Content keywords of an article."
},
"author": {
"type": "string",
"maxLength": 1000,
"description": "Author of an article."
},
"page_type": {
"type": "string",
"maxLength": 200,
"description": "Category of page the visitor viewed (examples include article page, tag page, and home page)."
},
"thumbnail_url": {
"type": "string",
"maxLength": 1000,
"description": "Thumbnail URL of an article."
},
"published_date": {
"type": "integer",
"description": "Publish date of an article in seconds (unix epoch timestamp)."
},
"decision_campaign_id": {
"type": "string",
"maxLength": 1000,
"description": "Unique ID of the rule's campaign"
},
"decision_campaign_name": {
"type": "string",
"maxLength": 1000,
"description": "Descriptive name of the rule's campaign"
},
"decision_campaign_type": {
"type": "string",
"maxLength": 50,
"description": "Type of the rule's campaign"
},
"decision_rule_ab_variation": {
"type": "string",
"maxLength": 1000,
"description": "(DEPRECATED) Name of the AB test rule's chosen variation"
},
"decision_rule_ab_variation_id": {
"type": "string",
"maxLength": 1000,
"description": "Id of the AB test rule's chosen variation"
},
"decision_rule_ab_variation_name": {
"type": "string",
"maxLength": 1000,
"description": "Name of the AB test rule's chosen variation"
}
},
"additionalProperties": true
},
"minItems": 1,
"uniqueItems": true
}
}
}
Example:
{
"touch_identifier": "eGlhb2dlbGFpd2FuYQ==",
"identity": "test@example.com",
"identity_source": "email",
"return_segments": true,
"return_content_views": true,
"captures": [
{
"event_name": "Content View",
"event_source": "web",
"event_date": "2016-01-22T10:20:21.1Z",
"identities": {
"dG9vTG9uZyB0byBkZWNvZGUNCg==": "tracking",
"lift customer": "name"
},
"person_udf50": "c3RvcHRyeWluZw=="
},
{
"event_name": "Content View",
"event_source": "web",
"event_date": "2016-01-22T10:20:31.123Z",
"identities": {
"test2@example.com": "email",
"lift customer": "name"
},
"engagement_score": 50,
"person_udf50": "aWxpa2V5b3VyaGF0"
}
]
}
HTTP status code 201
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/capture_response.json",
"title": "Segments",
"description": "Segments calculated by imported captures.",
"type": "object",
"required": [
"touch_identifier",
"identity",
"identity_source"
],
"properties": {
"errors": {
"description": "List of errors for the capture post.",
"type": "array",
"items": {
"description": "Error object containing information on errors in captures.",
"type": "object",
"properties": {
"code": {
"description": "Error code.",
"type": "string",
"maxLength": 100
},
"message": {
"description": "Human readable error message.",
"type": "string",
"maxLength": 200
}
}
},
"minItems": 0
},
"touch_identifier": {
"type": "string",
"maxLength": 22,
"description": "Internal identifier for the touch. If touch_identifier is not passed in the request, value of this field will be generated."
},
"identity": {
"type": "string",
"maxLength": 200,
"description": "Visitor's primary identity information."
},
"identity_source": {
"type": "string",
"maxLength": 200,
"description": "Type of visitor's primary identity information. Specific string (account, email, facebook, twitter, tracking, name, amp) or custom identifier type. This will be 'tracking' if no identifier is passed in the request."
},
"matched_segments": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"description"
],
"properties": {
"id": {
"type": "string",
"description": "Matched segment tracking id."
},
"name": {
"type": "string",
"maxLength": 200,
"description": "Matched segment name."
},
"description": {
"type": "string",
"maxLength": 4000,
"description": "Matched segment description."
}
}
}
},
"content_interactions": {
"type": "array",
"items": {
"type": "object",
"required": [
"content_uuid",
"type",
"date_time"
],
"properties": {
"content_uuid": {
"type": "string",
"description": "Matched content uuid."
},
"type": {
"type": "String",
"enum": [
"CONTENT_VIEW"
],
"description": "The type of interaction with the content_uuid."
},
"date_time": {
"type": "string",
"pattern": "^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T(0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]:[0-5][0-9].[0-9]{1,3}Z$",
"description": "The date (in UTC) that the interaction with the content_uuid occurred (e.g., 2015-11-05T21:01:42.239Z)"
}
}
}
}
}
}
Example:
{
"touch_identifier": "fM2RzZmdhNHczIDVxMjM=",
"identity": "vDS4dc29tZWlkZW50aWZlcg",
"identity_source": "tracking",
"matched_segments": [
{
"id": "10092",
"name": "Anonymous Visitor",
"description": "Tracks whether a visitor to the site is anonymous"
},
{
"id": "10096",
"name": "Interested Visitor",
"description": "If the new user clicks on the aboutus section of the site, then they are an interested visitor learning more about the service."
}
],
"content_interactions": [
{
"content_uuid": "9c41a106ee4d41df89cd9",
"type": "CONTENT_VIEW",
"date_time": "2017-07-25T20:25:14.01"
},
{
"content_uuid": "6de3188b01e5442daa03e",
"type": "CONTENT_VIEW",
"date_time": "2017-07-25T20:25:47.657"
}
]
}
HTTP status code 400
Missing captures parameter, no captures, invalid identity_source, invalid site_id, invalid event_date, invalid JSON.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/error.json",
"title": "Generic error schema",
"type": "object",
"item": {
"title": "Generic error",
"type": "object",
"properties": {
"status": {
"description": "Various endpoint request STATUS when it has returned an error (HTTP 4xx/5xx).",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors",
"type": "array",
"items": {
"description": "Error object containing information on why the endpoint request failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
[
{
"touch_identifier": "45f932c510764f42cpc4f",
"identity": "sample@acquia.com",
"identity_source": "email",
"errors": [
{
"code": "BAD_REQUEST",
"message": "Customer site is not valid, 'SAMPLE_SITE' not found for customer 'TESTACCOUNT'"
}
]
},
{
"touch_identifier": "54971e18afe2191a96652",
"identity": "sample2@acquia.com",
"identity_source": "email",
"errors": [
{
"code": "BAD_REQUEST",
"message": "No captures provided"
}
]
},
{
"touch_identifier": "ecb7390f605e4018849dj",
"identity": "sample3@acquia.com",
"identity_source": "invalidIdentitySource",
"errors": [
{
"code": "BAD_REQUEST",
"message": "Invalid identity source, 'invalidIdentitySource' not found for customer 'QAIT'"
}
]
},
{
"touch_identifier": "696Gg0yO5Swi60nwMyZRx0",
"identity": "1T92JgHAEqgHPPKsDG4ihN",
"identity_source": "tracking",
"errors": [
{
"code": "BAD_REQUEST",
"message": "No data provided"
}
]
},
{
"touch_identifier": "2771861397f24d25b64ee",
"identity": "792JgHAEqgHPPKsDG4ihN",
"identity_source": "tracking",
"errors": [
{
"code": "BAD_REQUEST",
"message": "Invalid capture data - Date type custom field(s) in invalid format for capture 1"
},
{
"code": "BAD_REQUEST",
"message": "No valid captures provided"
}
]
},
{
"touch_identifier": "a59749d7410c372e8cadf",
"identity": "HAEqgH792JgPPKsDG4ihN",
"identity_source": "tracking",
"errors": [
{
"code": "DATE_FORMAT_INCORRECT",
"message": "Invalid date format for capture 1"
},
{
"code": "BAD_REQUEST",
"message": "No valid captures provided"
}
]
}
]
HTTP status code 429
Limit exceeded for either max touches per person in a month or max events per touch.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/error.json",
"title": "Generic error schema",
"type": "object",
"item": {
"title": "Generic error",
"type": "object",
"properties": {
"status": {
"description": "Various endpoint request STATUS when it has returned an error (HTTP 4xx/5xx).",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors",
"type": "array",
"items": {
"description": "Error object containing information on why the endpoint request failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
[
{
"touch_identifier": "ecb7390f605e4018849dj",
"identity": "sample3@acquia.com",
"identity_source": "tracking",
"errors": [
{
"code": "LIMIT_EXCEEDED",
"message": "Max touches per person in a month limit exceeded"
}
]
},
{
"touch_identifier": "ecb7390f605e4018849dj",
"identity": "sample3@acquia.com",
"identity_source": "tracking",
"errors": [
{
"code": "LIMIT_EXCEEDED",
"message": "Max events per touch limit exceeded"
}
]
}
]
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
Capture Identity
Capture Identity API adds identifiers to an existing profile or removes non-tracking identifiers from an existing one.
Send identifier(s) to be removed and returns a list of identifiers that were deleted and/or any associated error that may have occured
put /capture_identity
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
Query Parameters
- knownIdentifier: required(string)
Visitor's identity information. Ensure this value is URL encoded.
- knownIdentifierType: required(string)
Type of visitor's identity information - must be account, email, facebook, tracking, twitter, amp, purged or any custom resolvable identifier.
- identifierType=identifier: required(string)
New identifier (both resolvable and unresolvable) to be added to the known identifier. Multiple identifiers can be added to the known profile. Ensure that the identifier value is URL encoded. Single example: email=test%40server.com and a multiple example: email=test%40server.com&email=test2%40server.com
Example:
https://ci-api.dev.lift.acquia.com/<customerAccountId>/capture_identity?knownIdentifierType=tracking&knownIdentifier=29o6kDX5Xgw4wydwEDL2um&email=qa.buzzlightyear+1901_2020-06-09_21_00_00.125%40acquia.com&facebook=qa.buzzlightyear+1901_2020-06-09_21_00_00.125%40facebook.com
HTTP status code 200
The known profile was updated successfully with the specified identifiers.
HTTP status code 400
Missing or invalid parameter values.
HTTP status code 404
The known profile (identifier + type) is not found for the customer account.
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
delete /capture_identity
Send identifier(s) to be removed and returns a list of identifiers that were deleted and/or any associated error that may have occured
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/capture_identity_delete_payload.json",
"title": "Capture Identity",
"type": "object",
"description": "Capture Identity payload",
"required": [
"knownIdentifier",
"knownIdentifierType"
],
"items": {
"title": "Capture Identity",
"type": "object",
"properties": {
"knownIdentifier": {
"description": "The identifier that is used to resolved the person",
"type": "string"
},
"knownIdentifierType": {
"description": "The identifier type referencing the knownIdentifier",
"type": "string",
"maxLength": 200
},
"identitiesToDelete": {
"description": "A list of identities to delete. If this parameter is not specified, the server will remove all identities associated by the known identifier except for the tracking id",
"type": "object",
"uniqueItems": true,
"items": {
"title": "Map<String,String>",
"patternProperties": {
".{1,}": {
"type": "string",
"maxLength": 200
}
}
}
}
}
}
}
Example:
{
"knownIdentifier": "some_identity@acquia.com",
"knownIdentifierType": "email",
"identitiesToDelete": {
"example_facebook": "facebook",
"@example": "twitter",
"example_name": "name"
}
}
HTTP status code 200
All identities specified in the payload were deleted
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/capture_identity_delete_response.json",
"title": "Capture identity",
"type": "object",
"item": {
"title": "Capture Identity",
"type": "object",
"properties": {
"status": {
"description": "Capture Identity request status. SUCCESS if all identities were deleted, COMPLETED_WITH_ERRORS if some identities were deleted or, FAILURE otherwise",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for capture_identity DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the capture_identity endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
},
"deletedIdentities": {
"description": "List of identities that were deleted",
"type": "array",
"items": {
"pattern": "^[a-z0-9_-]{1,128}$",
"type": "string"
}
}
},
"required": [
"status"
]
}
}
Example:
[
{
"status": "SUCCESS",
"deleted_identities": [
"example_name",
"example_facebook",
"@example"
]
},
{
"deleted_identities": [
"some_email@example.com"
],
"errors": [
{
"message": "Identity 5gbtzFkDsbknwyGY8YE63R of type tracking is not allowed to be deleted",
"statusCode": "INVALID_IDENTITY"
}
],
"status": "COMPLETED_WITH_ERRORS"
}
]
HTTP status code 400
Deleting a tracking id, invalid JSON
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/capture_identity_delete_response.json",
"title": "Capture identity",
"type": "object",
"item": {
"title": "Capture Identity",
"type": "object",
"properties": {
"status": {
"description": "Capture Identity request status. SUCCESS if all identities were deleted, COMPLETED_WITH_ERRORS if some identities were deleted or, FAILURE otherwise",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for capture_identity DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the capture_identity endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
},
"deletedIdentities": {
"description": "List of identities that were deleted",
"type": "array",
"items": {
"pattern": "^[a-z0-9_-]{1,128}$",
"type": "string"
}
}
},
"required": [
"status"
]
}
}
Example:
[
{
"errors": [
{
"message": "Identity some_tracking_id of type tracking is not allowed to be deleted",
"statusCode": "INVALID_IDENTITY"
}
],
"status": "FAILURE"
},
{
"errors": [
{
"message": "Missing knownIdentifier from the request",
"statusCode": "MISSING_KNOWN_IDENTIFIER"
},
{
"message": "Missing knownIdentifierType from the request",
"statusCode": "MISSING_KNOWN_IDENTIFIER_TYPE"
}
],
"status": "FAILURE"
}
]
HTTP status code 404
Unable to find identifier(s) to delete or when the known identifier is not found
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/capture_identity_delete_response.json",
"title": "Capture identity",
"type": "object",
"item": {
"title": "Capture Identity",
"type": "object",
"properties": {
"status": {
"description": "Capture Identity request status. SUCCESS if all identities were deleted, COMPLETED_WITH_ERRORS if some identities were deleted or, FAILURE otherwise",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for capture_identity DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the capture_identity endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
},
"deletedIdentities": {
"description": "List of identities that were deleted",
"type": "array",
"items": {
"pattern": "^[a-z0-9_-]{1,128}$",
"type": "string"
}
}
},
"required": [
"status"
]
}
}
Example:
{
"errors": [
{
"message": "Identity example_name of type name is not found",
"statusCode": "IDENTITY_NOT_FOUND"
}
],
"status": "FAILURE"
}
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
Customer Sites V1
Customer Sites API is used to create, retrieve, update or delete a customer site.
Get a list of all customer sites for the customer account.
Create/Update a customer site. When POST-ing a customer site with the same identifier, it will update that existing customer site.
get /customer_sites
Get a list of all customer sites for the customer account.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/customer_sites.json",
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"description": "Customer Site UID (no spaces allowed).",
"type": "string",
"maxLength": 20
},
"name": {
"description": "Name of the customer site.",
"type": "string",
"maxLength": 50
},
"url": {
"description": "URL of the customer site.",
"type": "string",
"maxLength": 2000
}
},
"required": [
"id",
"name"
]
}
}
Example:
[
{
"id": "lift_web",
"name": "Lift Web",
"url": "http://lift.acquia.com"
},
{
"id": "content_hub",
"name": "Content Hub"
}
]
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
post /customer_sites
Create/Update a customer site. When POST-ing a customer site with the same identifier, it will update that existing customer site.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/customer_sites.json",
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"description": "Customer Site UID (no spaces allowed).",
"type": "string",
"maxLength": 20
},
"name": {
"description": "Name of the customer site.",
"type": "string",
"maxLength": 50
},
"url": {
"description": "URL of the customer site.",
"type": "string",
"maxLength": 2000
}
},
"required": [
"id",
"name"
]
}
}
Example:
[
{
"id": "lift_web",
"name": "Lift Web",
"url": "http://lift.acquia.com"
},
{
"id": "content_hub",
"name": "Content Hub"
}
]
HTTP status code 201
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/customer_sites_response.json",
"type": "array",
"items": {
"type": "object",
"properties": {
"status": {
"description": "Customer site post status. SUCCESS if succeeded, FAILURE otherwise",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for the customer site post.",
"type": "array",
"items": {
"description": "Error object containing information on why the post failed.",
"type": "object",
"properties": {
"code": {
"description": "Error code.",
"type": "string",
"maxLength": 100
},
"message": {
"description": "Human readable error message.",
"type": "string",
"maxLength": 200
}
}
},
"minItems": 0
},
"item": {
"description": "Customer site object that was passed to the api.",
"type": "object",
"properties": {
"id": {
"description": "Customer Site UID.",
"type": "string",
"maxLength": 20
},
"name": {
"description": "Name of the customer site.",
"type": "string",
"maxLength": 50
},
"url": {
"description": "URL of the customer site.",
"type": "string",
"maxLength": 2000
}
}
}
},
"required": [
"status",
"item"
]
}
}
Example:
[
{
"status": "SUCCESS",
"item": {
"id": "lift_web",
"name": "Lift Web",
"url": "http://lift.acquia.com"
}
},
{
"status": "FAILURE",
"errors": [
{
"code": "INVALID_NAME",
"message": "Customer Site name is mandatory"
}
],
"item": {
"id": "content_hub",
"name": ""
}
},
{
"status": "FAILURE",
"errors": [
{
"code": "INVALID_UID",
"message": "Customer site id must not contain any whitespaces"
}
],
"item": {
"id": "site db61a017938545h",
"name": "name-db61a017938545h",
"url": "https://docs.acquia.com/lift/profile-mgr"
}
}
]
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
An individual customer site.
Get a customer site.
Delete an individual customer site.
get /customer_sites/{site_id}
Get a customer site.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
URI Parameters
- site_id: required(string)
The external_site_id of the customer site.
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/customer_site.json",
"type": "object",
"properties": {
"id": {
"description": "Customer Site UID.",
"type": "string",
"maxLength": 20
},
"name": {
"description": "Name of the customer site.",
"type": "string",
"maxLength": 50
},
"url": {
"description": "URL of the customer site.",
"type": "string",
"maxLength": 2000
}
},
"required": [
"id",
"name"
]
}
Example:
{
"id": "lift_web",
"name": "Lift Web",
"url": "http://lift.acquia.com"
}
HTTP status code 404
Customer site not found.
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
delete /customer_sites/{site_id}
Delete an individual customer site.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
URI Parameters
- site_id: required(string)
The external_site_id of the customer site.
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
Event Import
Import current and historical visitor event data and perform other actions like anonymizing profiles (event_name = 'purgePerson') and updating visitor profile identifiers (event_name = 'updatePerson').
Create real-time or historical visitor event activity. To anonymize a profile, use event_name = 'purgePerson' and to update an existing visitor profile with new identifiers, use event_name = 'updatePerson'
post /event_import
Create real-time or historical visitor event activity. To anonymize a profile, use event_name = 'purgePerson' and to update an existing visitor profile with new identifiers, use event_name = 'updatePerson'
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/event_import_payload.json",
"type": "object",
"title": "Event Import",
"description": "Event Import Payload.",
"required": [
"identity",
"identity_source",
"event_name",
"event_source"
],
"additionalProperties": true,
"patternProperties": {
"^(person|event)_udf([1-9]|[1-4][0-9]|50)$": {
"type": "string",
"maxLength": 1000,
"description": "Custom fields for person/event."
},
"^(touch)_udf([1-9]|1[0-9]|20)$": {
"type": "string",
"maxLength": 1000,
"description": "Custom fields for touch."
}
},
"properties": {
"identity": {
"type": "string",
"maxLength": 200,
"description": "Visitor's identity information."
},
"identity_source": {
"type": "string",
"maxLength": 200,
"description": "Type of visitor's identity information."
},
"event_name": {
"type": "string",
"maxLength": 200,
"description": "Event name corresponding to the captured information — the event type matching this event name must match the master list of events created in Acquia Lift Profile Manager (default or custom)."
},
"event_source": {
"type": "string",
"maxLength": 200,
"description": "Source of the event — can be used to pass event data from tools you have set up to send data to Acquia Lift Profile Manager. The default Acquia Lift Profile Manager value is web; depending on your website's configuration, examples may include csrtool1 and promo1."
},
"event_date": {
"type": "string",
"pattern": "^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T(0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]:[0-5][0-9].[0-9]{1,3}Z$",
"description": "Event date and time (UTC) (e.g., 2015-11-05T21:01:42.321Z). If you do not enter a date and time, the date and time of the event_import call is sent to ContextDB."
},
"touch_id": {
"type": "string",
"description": "Internal identifier for the touch."
},
"url": {
"type": "string",
"maxLength": 2000,
"description": "Event's URL."
},
"referral_url": {
"type": "string",
"maxLength": 4000,
"description": "Referrer's URL."
},
"content_title": {
"type": "string",
"maxLength": 200,
"description": "The content's title."
},
"user_agent": {
"type": "string",
"maxLength": 2000,
"description": "Visitor's user agent."
},
"platform": {
"type": "string",
"maxLength": 50,
"description": "Visitor's platform."
},
"ip_address": {
"type": "string",
"maxLength": 45,
"description": "Visitor's IP address (supports both IPv4 and IPv6 addresses)."
},
"identities": {
"type": "object",
"items": {
"title": "Map<String,String>",
"patternProperties": {
".{1,}": {
"type": "string",
"maxLength": 200
}
}
},
"uniqueItems": true,
"description": "Additional identity information, with identities as keys and identity sources as values (examples include \"identities\":{\"john.smith@acquia.com\":\"email\", \"John Smith\":\"name\"})."
},
"engagement_score": {
"type": "integer",
"description": "The number that you have chosen to signify the importance of a visitor's interest in an event."
},
"site_id": {
"type": "string",
"maxLength": 20,
"description": "The customer site matching external_site_id in the configuration database."
},
"personalization_name": {
"type": "string",
"maxLength": 1000,
"description": "Name of personalization associated with an event."
},
"personalization_machine_name": {
"type": "string",
"maxLength": 1000,
"description": "Machine name of personalization associated with an event."
},
"personalization_chosen_variation": {
"type": "string",
"maxLength": 1000,
"description": "The variation (decision) chosen for an event."
},
"personalization_audience_name": {
"type": "string",
"maxLength": 1000,
"description": "The name of the audience."
},
"personalization_decision_policy": {
"type": "string",
"maxLength": 1000,
"description": "The decision policy used — for example, explore or target."
},
"personalization_goal_name": {
"type": "string",
"maxLength": 1000,
"description": "The name of the goal reached."
},
"personalization_goal_value": {
"type": "integer",
"maxLength": 1000,
"description": "The value of the goal reached."
},
"decision_slot_id": {
"type": "string",
"maxLength": 1000,
"description": "Decision Slot Id"
},
"decision_slot_name": {
"type": "string",
"maxLength": 1000,
"description": "Decision Slot Name"
},
"decision_rule_id": {
"type": "string",
"maxLength": 1000,
"description": "Decision Rule Id"
},
"decision_rule_name": {
"type": "string",
"maxLength": 1000,
"description": "Decision Rule Name"
},
"decision_content_id": {
"type": "string",
"maxLength": 1000,
"description": "Decision Content Id"
},
"decision_content_name": {
"type": "string",
"maxLength": 1000,
"description": "Decision Content Name"
},
"decision_goal_id": {
"type": "string",
"maxLength": 1000,
"description": "Decision Goal Id"
},
"decision_goal_name": {
"type": "string",
"maxLength": 1000,
"description": "Decision Goal Name"
},
"decision_goal_value": {
"type": "string",
"maxLength": 1000,
"description": "Decision Goal Value"
},
"decision_view_mode": {
"type": "string",
"maxLength": 1000,
"description": "Decision View Mode"
},
"decision_policy": {
"type": "string",
"maxLength": 1000,
"description": "Decision Policy"
},
"decision_rule_segment_id": {
"type": "string",
"maxLength": 1000,
"description": "Decision Rule Segment Id"
},
"decision_rule_segment_name": {
"type": "string",
"maxLength": 1000,
"description": "Decision Rule Segment Name"
},
"decision_rule_type": {
"type": "string",
"maxLength": 1000,
"description": "Decision Rule Type"
}
}
}
Example:
{
"identity": "event_import_eg@example.com",
"identity_source": "email",
"event_name": "Content View",
"event_source": "web",
"event_date": "2015-11-05T10:22:03.111Z",
"engagement_score": 15,
"identities": {
"fb_event_import_eg": "facebook"
}
}
HTTP status code 201
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/event_import_response.json",
"type": "object",
"title": "Event Import",
"description": "Event Import Response.",
"required": [
"event_import_status_url",
"event_import_id"
],
"properties": {
"errors": {
"description": "List of errors for the event_import post.",
"type": "array",
"items": {
"description": "Error object containing information on errors in the event imports.",
"type": "object",
"properties": {
"code": {
"description": "Error code.",
"type": "string",
"maxLength": 100
},
"message": {
"description": "Human readable error message.",
"type": "string",
"maxLength": 200
}
}
},
"minItems": 0
},
"event_import_status_url": {
"type": "string",
"description": "The URL of your Acquia Lift-related files."
},
"event_import_id": {
"type": "integer",
"description": "Unique identifier assigned by Acquia Lift to the events."
}
}
}
Example:
[
{
"event_import_status_url": "http://us-east-1-production-api.lift.acquia.com/SAMPLE/event_import_status/10601",
"event_import_id": 10601
},
{
"event_import_status_url": "http://us-east-1-production-api.lift.acquia.com/SAMPLE/event_import_status/10603",
"event_import_id": 10603,
"error": "One or more rows were not imported, to check status please visit eventImportStatusURL"
}
]
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
Event Import Status
Retrieve the current status of an event_import API POST call.
Status id returned by event_import api.
Get the status of the specified event_import API POST.
get /event_import_status/{event_import_id}
Get the status of the specified event_import API POST.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
URI Parameters
- event_import_id: required(string)
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/event_import_status_response.json",
"type": "object",
"title": "Event Import Status",
"description": "event import status.",
"properties": {
"eventImportID": {
"type": "integer",
"description": "Unique identifier assigned by Acquia Lift to the event import process."
},
"status": {
"type": "string",
"description": "Status of the event import process - COMPLETED or ERROR."
},
"totalNumberOfLines": {
"type": "integer",
"description": "The number of lines/records registered in the data specified."
},
"numberOfRejectedLines": {
"type": "integer",
"description": "The number of lines/records that were not processed."
},
"numberOfProcessedLines": {
"type": "integer",
"description": "The number of lines/records that were processed successfully."
},
"creationTime": {
"type": "string",
"pattern": "^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T(0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]:[0-5][0-9].[0-9]{1,3}Z$",
"description": "The date and time that the import process was started (e.g., 2015-12-07T20:43:43.639Z)."
},
"completionTime": {
"type": "string",
"pattern": "^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T(0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]:[0-5][0-9].[0-9]{1,3}Z$",
"description": "The date and time that the import process was finished (e.g., 2015-12-07T20:43:46.021Z)."
},
"rejectedLines": {
"type": "array",
"minItems": 0,
"uniqueItems": true
}
}
}
Example:
[
{
"eventImportID": 17204,
"status": "COMPLETED",
"totalNumberOfLines": 1,
"numberOfRejectedLines": 0,
"numberOfProcessedLines": 1,
"creationTime": "2015-12-07T20:43:43.639Z",
"completionTime": "2015-12-07T20:43:46.021Z",
"rejectedLines": []
},
{
"eventImportID": 3390116,
"status": "SUBMITTED",
"totalNumberOfLines": 1,
"numberOfRejectedLines": 1,
"numberOfProcessedLines": 1,
"creationTime": "2018-05-02T02:43:58.727Z",
"rejectedLines": [
{
"eventImportId": 3390116,
"lineNumber": 0,
"lineStatus": "ERROR",
"processTime": "2018-05-02T02:43:58Z",
"lineContent": "{\"identity\":\"sample@acquia.com\",\"identity_source\":\"email\",\"event_source\":\"API\"}",
"error": "MISMATCHED_NUMBER_OF_COLUMNS",
"internalError": "Row is missing a necessary parameter or has an incorrect type"
}
]
}
]
HTTP status code 404
Event Import Status ID was not found.
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
/events
Export Visitor Data
Start a data export job, which will extract person data as files in your account's Amazon S3 bucket for offline analysis or integration with other systems.
Start a data export job, specifying the range and the type of data you wish to extract from Redshift for offline analysis or integration with other systems.
get /export_visitor_data
Start a data export job, specifying the range and the type of data you wish to extract from Redshift for offline analysis or integration with other systems.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
Query Parameters
- startDate: required(datetime)
The start date (yyyy-MM-dd or yyyy-MM-dd'T'HH:mm:ss.SSS'Z') search criteria of the data to be exported.
Example:
2016-02-28T16:41:41.090Z
- dataExport: required(string)
Visitor data to export - must be person, touch, event, rankings, matchedsegment, segment, or any comma-delimited combination of these values.
- identifierTypes: (string)
Identity criteria that must exist for a visitor to include their results in the export file - must be account, email, facebook, name, twitter, purged, tracking, amp, a custom identifier, or any comma-delimited combination of these values.
- endDate: (datetime)
The end date (yyyy-MM-dd or yyyy-MM-dd'T'HH:mm:ss.SSS'Z') search criteria of the data to be exported.
Example:
2016-03-28T16:41:41.090Z
HTTP status code 202
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/export_visitor_data_response.json",
"type": "array",
"title": "Export Visitor Data",
"items": {
"title": "ExportVisitorDataResponse",
"type": "object",
"required": [
"id",
"location",
"statusURL"
],
"properties": {
"id": {
"type": "integer",
"description": "Unique combination of numbers identifying the person data export file — Acquia Lift Profile Manager internal value."
},
"location": {
"type": "string",
"description": "The location of the exported file in the filesystem."
},
"statusURL": {
"type": "string",
"description": "The Acquia Lift Profile Manager URL where the status information can be viewed."
}
}
}
}
Example:
[
{
"id": 17203,
"location": "SAMPLE/OUTBOX/person_2015-10-30_17203.csv",
"statusURL": "https://eu-central-1-qa-my.dev.lift.acquia.com:443/SAMPLE/export_visitor_data_status/17203"
},
{
"id": 17205,
"location": "SAMPLE/OUTBOX/rankings_2015-10-30_17205.csv",
"statusURL": "https://eu-central-1-qa-my.dev.lift.acquia.com:443/SAMPLE/export_visitor_data_status/17205"
},
{
"id": 17204,
"location": "SAMPLE/OUTBOX/matchedsegment_2015-10-30_17204.csv",
"statusURL": "https://eu-central-1-qa-my.dev.lift.acquia.com:443/SAMPLE/export_visitor_data_status/17204"
},
{
"id": 17206,
"location": "SAMPLE/OUTBOX/touch_2015-10-30_17206.csv",
"statusURL": "https://eu-central-1-qa-my.dev.lift.acquia.com:443/SAMPLE/export_visitor_data_status/17206"
},
{
"id": 17208,
"location": "SAMPLE/OUTBOX/event_2015-10-30_17208.csv",
"statusURL": "https://eu-central-1-qa-my.dev.lift.acquia.com:443/SAMPLE/export_visitor_data_status/17208"
},
{
"id": 17207,
"location": "SAMPLE/OUTBOX/segment_2015-10-30_17207.csv",
"statusURL": "https://eu-central-1-qa-my.dev.lift.acquia.com:443/SAMPLE/export_visitor_data_status/17207"
},
{
"id": 17209,
"location": "SAMPLE/OUTBOX/segment_2015-10-30_2015_11_31_17209.csv",
"statusURL": "https://eu-central-1-qa-my.dev.lift.acquia.com:443/SAMPLE/export_visitor_data_status/17209"
}
]
HTTP status code 400
Body
Media type: application/json
Type: export_visitor_data_response_400.json
Example:
{
"status": "FAILED",
"errors": [
{
"statusCode": "INVALID_DATA_EXPORT",
"message": "The data export 'invalid' is not valid for this request."
},
{
"statusCode": "INVALID_DATE_RANGE",
"message": "The date range '2018-07-12 15:48:43.765, 2018-07-11 15:48:43.765' is not valid."
},
{
"statusCode": "INVALID_DATE_RANGE",
"message": "The start date '2018-07' is not valid."
},
{
"statusCode": "INVALID_IDENTIFIER_TYPE",
"message": "The identifier type 'invalid' is not valid for this customer account."
},
{
"statusCode": "MISSING_START_DATE",
"message": "The start date parameter is missing for this request."
},
{
"statusCode": "MISSING_DATA_EXPORT",
"message": "The data export parameter is missing for this request."
}
]
}
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
Export Visitor Data Status
Obtain the status of a specific export job.
An individual export job.
Get the status of export job.
get /export_visitor_data_status/{status_id}
Get the status of export job.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
URI Parameters
- status_id: required(string)
The export job's unique ID, which is used for file name format and status polling.
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/export_visitor_data_status_response.json",
"type": "object",
"title": "Export Visitor Data Status",
"description": "Export Visitor Data Status Response.",
"required": [
"id",
"status",
"completionTime"
],
"properties": {
"id": {
"type": "integer",
"description": "Unique combination of numbers identifying the person data export file — Acquia Lift Profile Manager internal value."
},
"status": {
"type": "string",
"description": "Status of the current export — possible statuses include Submitted, Completed, and Completed - Errors."
},
"completionTime": {
"type": "string",
"pattern": "^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T(0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]:[0-5][0-9].[0-9]{3}Z$",
"description": "The date and time that the data file finished the export process (e.g., 2015-11-05T21:01:42.239Z)."
}
}
}
Example:
{
"id": 17104,
"status": "Completed",
"completionTime": "2015-11-05T21:01:42.239Z"
}
HTTP status code 303
Export job may be found under another URI.
HTTP status code 404
Resource not found.
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
Goals v1
A goal is a desired outcome. It is the motivation for running a personalization campaign that is used to measure the effectiveness of a campaign and provide feedback into the decision algorithms.
Get a list of all goals, optionally filtered. See the query parameters for a list of filter options.
Create/Update a new goal. When POST'ing a goal with the same identifier, it will update that existing goal.
get /goals
Get a list of all goals, optionally filtered. See the query parameters for a list of filter options.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
Query Parameters
- site_id: (string)
The customer site matching external_site_id in the configuration database which are associated to the goals returned by the endpoint.
Example:
site_id=Acquia
- global: (boolean)
Flag to indicate that the retrieved goals include/exclude global goals.
- rule_id: (string)
The rule identifier which are associated to the goals returned by the endpoint. The API endpoint supports multiple rule identifiers to be passed.
Example:
rule_id=63532bfc-313e-44c9-b15c-46d4b2df8489&rule_id=2cd6f6c2-ec1e-47ec-84e0-eb42d2d27219
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/goals.json",
"title": "Goals",
"type": "array",
"items": {
"title": "Goal",
"type": "object",
"properties": {
"id": {
"description": "Goal UID.",
"type": "string",
"maxLength": 100
},
"name": {
"description": "Human readable name of the goal.",
"type": "string",
"maxLength": 200
},
"description": {
"description": "Description of the goal.",
"type": "string",
"maxLength": 4000
},
"rule_ids": {
"description": "Rule identifiers.",
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z0-9_-]{1,128}$"
},
"minItems": 0,
"uniqueItems": true
},
"event_names": {
"description": "One or more event names.",
"type": "array",
"items": {
"type": "string",
"maxLength": 200
},
"minItems": 1,
"uniqueItems": true
},
"global": {
"description": "Indicates whether goal is global.",
"type": "boolean"
},
"site_ids": {
"description": "Optional list of site ids. Required if global is false.",
"type": "array",
"items": {
"type": "string",
"maxLength": 20,
"description": "The customer site matching external_site_id in the configuration database."
},
"minItems": 1,
"uniqueItems": true
},
"value": {
"description": "Empty or numeric value (float).",
"type": "string"
}
},
"required": [
"id",
"name",
"description",
"event_names",
"global"
]
}
}
Example:
[
{
"id": "pDX4dc29tZWlkZW50aWZlcg",
"name": "Purchase",
"description": "Winter promotion",
"rule_ids": [
"rule-1",
"rule-2"
],
"event_names": [
"purchase"
],
"global": false,
"site_ids": [
"us",
"ca"
],
"value": "100"
},
{
"id": "kZW50aWZlcg9tZWlkZW50lcg",
"name": "Subscribe",
"description": "Mailing list",
"rule_ids": [
"rule-3",
"rule-4"
],
"event_names": [
"form_submit"
],
"global": false,
"site_ids": [
"us",
"ca"
],
"value": "50"
}
]
HTTP status code 400
If an invalid customer site is passed in the site_id parameter.
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
post /goals
Create/Update a new goal. When POST'ing a goal with the same identifier, it will update that existing goal.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/goals.json",
"title": "Goals",
"type": "array",
"items": {
"title": "Goal",
"type": "object",
"properties": {
"id": {
"description": "Goal UID.",
"type": "string",
"maxLength": 100
},
"name": {
"description": "Human readable name of the goal.",
"type": "string",
"maxLength": 200
},
"description": {
"description": "Description of the goal.",
"type": "string",
"maxLength": 4000
},
"rule_ids": {
"description": "Rule identifiers.",
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z0-9_-]{1,128}$"
},
"minItems": 0,
"uniqueItems": true
},
"event_names": {
"description": "One or more event names.",
"type": "array",
"items": {
"type": "string",
"maxLength": 200
},
"minItems": 1,
"uniqueItems": true
},
"global": {
"description": "Indicates whether goal is global.",
"type": "boolean"
},
"site_ids": {
"description": "Optional list of site ids. Required if global is false.",
"type": "array",
"items": {
"type": "string",
"maxLength": 20,
"description": "The customer site matching external_site_id in the configuration database."
},
"minItems": 1,
"uniqueItems": true
},
"value": {
"description": "Empty or numeric value (float).",
"type": "string"
}
},
"required": [
"id",
"name",
"description",
"event_names",
"global"
]
}
}
Example:
[
{
"id": "pDX4dc29tZWlkZW50aWZlcg",
"name": "Purchase",
"description": "Winter promotion",
"rule_ids": [
"rule-1",
"rule-2"
],
"event_names": [
"purchase"
],
"global": false,
"site_ids": [
"us",
"ca"
],
"value": "100"
},
{
"id": "kZW50aWZlcg9tZWlkZW50lcg",
"name": "Subscribe",
"description": "Mailing list",
"rule_ids": [
"rule-3",
"rule-4"
],
"event_names": [
"form_submit"
],
"global": false,
"site_ids": [
"us",
"ca"
],
"value": "50"
}
]
HTTP status code 201
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/goalspostresult.json",
"title": "Goals",
"type": "array",
"items": {
"title": "GoalPostResult",
"type": "object",
"properties": {
"status": {
"description": "Goal post status. SUCCESS if succeeded, FAILURE otherwise.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for the goal post.",
"type": "array",
"items": {
"description": "Error object containing information on why the post failed.",
"type": "object",
"properties": {
"code": {
"description": "Error code.",
"type": "string",
"maxLength": 100
},
"message": {
"description": "Human readable error message.",
"type": "string",
"maxLength": 200
}
}
},
"minItems": 0
},
"item": {
"description": "Goal object that was passed to the api.",
"type": "object",
"properties": {
"id": {
"description": "Goal UID.",
"type": "string",
"maxLength": 100
},
"name": {
"description": "Human readable name of the goal.",
"type": "string",
"maxLength": 200
},
"description": {
"description": "Description of the goal.",
"type": "string",
"maxLength": 4000
},
"rule_ids": {
"description": "Rule identifiers.",
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z0-9_-]{1,128}$"
},
"minItems": 0,
"uniqueItems": true
},
"event_names": {
"description": "One or more event names.",
"type": "array",
"items": {
"type": "string",
"maxLength": 200
},
"minItems": 0,
"uniqueItems": true
},
"global": {
"description": "Indicates whether goal is global.",
"type": "boolean"
},
"site_ids": {
"description": "List of site ids.",
"type": "array",
"items": {
"type": "string",
"maxLength": 20,
"description": "The customer site matching external_site_id in configuration database."
},
"minItems": 0,
"uniqueItems": true
},
"value": {
"description": "Empty or numeric value (float).",
"type": "string"
}
}
}
},
"required": [
"status",
"item"
]
}
}
Example:
[
{
"status": "SUCCESS",
"item": {
"id": "pDX4dc29tZWlkZW50aWZlcg",
"name": "Purchase",
"description": "Winter promotion",
"rule_ids": [
"rule-1",
"rule-2"
],
"event_names": [
"purchase"
],
"global": true,
"value": "100"
}
},
{
"status": "FAILURE",
"errors": [
{
"code": "DUPLICATED_NAME",
"message": "Goal with the same name already exists"
},
{
"code": "INVALID_SITE_ID",
"message": "Invalid site provided"
}
],
"item": {
"id": "kZW50aWZlcg9tZWlkZW50lcg",
"name": "Subscribe",
"description": "Mailing list",
"rule_ids": [
"rule-3",
"rule-4"
],
"event_names": [
"form_submit"
],
"global": false,
"site_ids": [
"us",
"ca"
],
"value": "50"
}
}
]
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
An individual goal.
Get a goal.
Delete an individual goal.
get /goals/{goal_id}
Get a goal.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
URI Parameters
- goal_id: required(string)
The UID of the goal.
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/goal.json",
"title": "Goal",
"type": "object",
"properties": {
"id": {
"description": "Goal UID.",
"type": "string",
"maxLength": 100
},
"name": {
"description": "Human readable name of the goal.",
"type": "string",
"maxLength": 200
},
"description": {
"description": "Description of the goal.",
"type": "string",
"maxLength": 4000
},
"rule_ids": {
"description": "Rule identifiers.",
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-z0-9_-]{1,128}$"
},
"minItems": 0,
"uniqueItems": true
},
"event_names": {
"description": "One or more event names.",
"type": "array",
"items": {
"type": "string",
"maxLength": 200
},
"minItems": 1,
"uniqueItems": true
},
"global": {
"description": "Indicates whether goal is global.",
"type": "boolean"
},
"site_ids": {
"description": "Optional list of site ids. Required if global is false.",
"type": "array",
"items": {
"type": "string",
"maxLength": 20,
"description": "The customer site matching external_site_id in the configuration database."
},
"minItems": 0,
"uniqueItems": true
},
"value": {
"description": "Empty or numeric value (float).",
"type": "string"
}
},
"required": [
"id",
"name",
"description",
"event_names",
"global"
]
}
Example:
{
"id": "pDX4dc29tZWlkZW50aWZlcg",
"name": "Purchase",
"description": "Winter promotion",
"rule_ids": [
"rule-1",
"rule-2"
],
"event_names": [
"purchase"
],
"global": false,
"site_ids": [
"us",
"ca"
],
"value": "100"
}
HTTP status code 404
Goal not found.
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
delete /goals/{goal_id}
Delete an individual goal.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
URI Parameters
- goal_id: required(string)
The UID of the goal.
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
Segments
A segment is a set of metadata criteria that a particular person, touch or event matches with. Returns a list of defined segments associated with the customer account. The base url for this endpoint: https://{liftProfileManagerURL}/api/segments
Get a list of all segments, optionally filtered. See the query parameters for a list of filter options. Version 1 of the API returns the segment IDs. To use v1, set the content or media type as "application/json".
get /segments
Get a list of all segments, optionally filtered. See the query parameters for a list of filter options. Version 1 of the API returns the segment IDs. To use v1, set the content or media type as "application/json".
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
Query Parameters
- site_id: (string)
The customer site matching external_site_id in the configuration database (If an empty string is passed then only global customer site configured segments will be returned).
HTTP status code 200
Version 1 returns only the segment IDs.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/segments_v1.json",
"title": "Segments",
"type": "array",
"items": {
"title": "Segment",
"type": "string",
"properties": {
"id": {
"description": "Segment Id.",
"type": "string",
"maxLength": 100
}
}
}
}
Example:
[
"Anyone",
"CanadaVisitors",
"DeveloperPersona"
]
HTTP status code 400
If an invalid customer site is passed in the site_id parameter.
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
Segments Metadata v1
Information about Segments Metadata associated with account id. The URL for this API endpoint: https://{liftProfileManagerURL}/api/v1/{account_id}/segments-metadata.
Returns entire list of segments metadata associated with account id. This includes custom customer segmentable metadata.
get /segments-metadata
Returns entire list of segments metadata associated with account id. This includes custom customer segmentable metadata.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
HTTP status code 200
Returns list of segments metadata which consist of categories and their subcategories
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/segments-metadata.json",
"title": "Segments Metadata",
"type": "array",
"items": {
"title": "Segments Category",
"type": "object",
"properties": {
"category": {
"description": "Display name of category",
"type": "string"
},
"description": {
"description": "Information about segment category",
"type": "string"
},
"subcategories": {
"description": "List of Segment Sub-Categories associated with category",
"type": "array",
"items": {
"title": "Segments SubCategory",
"type": "object",
"properties": {
"id": {
"description": "Unique identifier of sub-category",
"type": "integer"
},
"name": {
"description": "Display name of sub-category",
"type": "string"
},
"description": {
"description": "Information about segment subcategory",
"type": "string"
},
"operators": {
"description": "List of allowed operators for this subcategory",
"type": "array",
"items": {
"description": "Operator code which represents the type of operator the sub category supports. Supported codes: [EQUALS,GT,GTE,LT,LTE,MATCHES,MATCHES_ONE_OF,MATCHES_ALL,CONTAINS,CONTAINS_ONE_OF,CONTAINS_ALL]",
"type": "string"
}
},
"default_values": {
"description": "List of allowed accepted values",
"type": "array",
"items": {
"description": "Each allowed value as an internal and display value",
"type": "object",
"properties": {
"display_value": {
"description": "Display text for allowed value",
"type": "string"
},
"internal_value": {
"description": "Internal text for allowed value",
"type": "string"
}
}
}
},
"value_type": {
"description": "Data type of value. Supported types: [STRING, INTEGER, BOOLEAN, DAY_OF_MONTH, DAY_OF_WEEK, HOUR, MONTH, CITY, COUNTRY, REGION]",
"type": "string"
},
"time_periods": {
"description": "List of time periods (ie. groupings) associated with subcategory value",
"type": "array",
"items": {
"description": "Each time period represents a type of grouping based on date. Supported types: [CURRENT_TOUCH,PAST_24_HOURS, PAST_36_HOURS,PAST_7_DAYS,PAST_30_DAYS,LAST_60_DAYS,PAST_90_DAYS,TODAY]",
"type": "string"
}
},
"customer_sites": {
"description": "List of account's customer sites and supported events",
"type": "array",
"items": {
"description": "Customer site with its supported events",
"type": "object",
"properties": {
"site_id": {
"description": "External customer site id. Global site will not have a site id",
"type": "string"
},
"name": {
"description": "Display name of customer site. If customer site represents global site, it will be represented as <Global Site>",
"type": "string"
},
"events": {
"description": "List of supported events based on customer site (including global)",
"type": "array",
"items": {
"description": "Event Name",
"type": "object",
"properties": {
"id": {
"description": "Identifier of event",
"type": "integer"
},
"name": {
"description": "Name of event",
"type": "string"
}
}
}
}
}
}
},
"terms": {
"description": "Name of term used for subcategory",
"type": "string"
}
},
"required": [
"id",
"name",
"description",
"operators",
"value_type"
]
}
}
},
"required": [
"category",
"subcategories"
]
}
}
Example:
[
{
"category": "Content History",
"description": "History of content that client previously visited",
"subcategories": [
{
"id": 43165,
"name": "Keyword Count",
"description": "A count of the number of times a user has seen a keyword of a given value",
"operators": [
"EQUALS",
"GT",
"GTE",
"LT",
"LTE"
],
"terms": "Keywords",
"value_type": "INTEGER",
"time_periods": [
"CURRENT_TOUCH",
"PAST_24_HOURS",
"TODAY",
"PAST_7_DAYS",
"PAST_30_DAYS",
"PAST_60_DAYS",
"PAST_90_DAYS"
]
},
{
"id": 43166,
"name": "Section Count",
"description": "A count of the number of times a user has seen a section of a given value",
"operators": [
"EQUALS",
"GT",
"GTE",
"LT",
"LTE"
],
"terms": "Sections",
"value_type": "INTEGER",
"time_periods": [
"CURRENT_TOUCH",
"PAST_24_HOURS",
"TODAY",
"PAST_7_DAYS",
"PAST_30_DAYS",
"PAST_60_DAYS",
"PAST_90_DAYS"
]
}
]
},
{
"category": "Current System Info",
"description": "System information on what the client is using to access the content",
"subcategories": [
{
"id": 43146,
"name": "Browser",
"description": "Browser used for this touch",
"operators": [
"MATCHES_ONE_OF"
],
"default_values": [
{
"display_value": "Chrome",
"internal_value": "CHROME"
},
{
"display_value": "Firefox",
"internal_value": "FIREFOX"
},
{
"display_value": "Internet Explorer",
"internal_value": "IE"
},
{
"display_value": "Opera",
"internal_value": "OPERA"
},
{
"display_value": "Other",
"internal_value": "OTHER"
}
],
"value_type": "STRING"
},
{
"id": 43145,
"name": "Platform",
"description": "Platform used for this touch",
"operators": [
"MATCHES_ONE_OF"
],
"default_values": [
{
"display_value": "Desktop",
"internal_value": "DESKTOP"
},
{
"display_value": "Game Console",
"internal_value": "GAME_CONSOLE"
},
{
"display_value": "Mobile",
"internal_value": "MOBILE"
},
{
"display_value": "Tablet",
"internal_value": "TABLET"
},
{
"display_value": "Other",
"internal_value": "OTHER"
}
],
"value_type": "STRING"
},
{
"id": 43144,
"name": "System",
"description": "Operating system (OS) used for this touch",
"operators": [
"MATCHES_ONE_OF"
],
"value_type": "STRING"
}
]
},
{
"category": "Event Count",
"description": "Any action that occurs as a result of the user (or another) source",
"subcategories": [
{
"id": 43167,
"name": "Events",
"description": "Name of the event (for example, Content View)",
"operators": [
"EQUALS",
"GT",
"GTE",
"LT",
"LTE"
],
"value_type": "INTEGER",
"time_periods": [
"CURRENT_TOUCH",
"PAST_24_HOURS",
"TODAY",
"PAST_7_DAYS",
"PAST_30_DAYS",
"PAST_DAYS",
"DATE_RANGE"
],
"customer_sites": [
{
"name": "<Global>",
"events": [
{
"id": 13853,
"name": "Campaign Action"
},
{
"id": 13854,
"name": "Campaign Click Through"
},
{
"id": 13857,
"name": "Click-Through"
},
{
"id": 13852,
"name": "Content View"
},
{
"id": 13855,
"name": "Decision"
},
{
"id": 13856,
"name": "Goal"
},
{
"id": 13859,
"name": "Newsletter subscription"
},
{
"id": 13858,
"name": "Product purchase"
}
],
"site_id": ""
},
{
"name": "Test Site Id 1",
"events": [],
"site_id": "test-site-id-1"
}
]
}
]
}
]
HTTP status code 401
Unauthorized access to endpoint
HTTP status code 403
Body
Media type: application/json
Type: any
Example:
{
"status": "FAILED",
"errors": [
{
"statusCode": "INVALID_ACCOUNTNAME",
"message": "No permission to perform operations for the account provided"
}
]
}
HTTP status code 500
Internal error when compiling list of segments metadata associated with account id
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
Users
A user of the Profile Manager dashboard. The URL for this API endpoint is https://{liftProfileManagerURL}/api/v1/accounts/{account_id}/users.
Get a list of all users for the customer account. User credentials belonging to a customer account that has linked customer accounts can view users in said linked customer accounts as well.
Create a new user.
get /users
Get a list of all users for the customer account. User credentials belonging to a customer account that has linked customer accounts can view users in said linked customer accounts as well.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
Query Parameters
- search: (string)
The search string parameter will be used to search users on the basis of their full name or emailId.
- start: (int - default: 0)
The start parameter represents the starting index of the search results. The value is a zero-base index.
- rows: (int - default: 10)
The rows parameter will be used to filter the users list in groups of value given in this parameter. To fetch all users we need to pass rows as -1.
- orderBy: (string - default: DESC)
The orderBy parameter will be used to order the users list in ascending or descending order.
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/users.json",
"title": "Users",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Get all users request status. SUCCESS if succeeded, FAILURE otherwise",
"type": "string",
"maxLength": 10
},
"total": {
"description": "Count of total users matching criteria passed in query params",
"type": "int"
},
"errors": {
"description": "List of errors for users get",
"type": "array",
"items": {
"description": "Error object containing information on why the get failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"code": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 0
},
"item": {
"description": "List of users that is passed to api.",
"type": "array",
"item": {
"description": "User object that is passed to api",
"type": "object",
"properties": {
"userId": {
"description": "User UID.",
"type": "string",
"maxLength": 100
},
"fullName": {
"description": "Full name of the user.",
"type": "string",
"maxLength": 200
},
"enabled": {
"description": "If this user is enabled or not",
"type": "boolean"
},
"emailAddress": {
"description": "Email of the user. Used for login.",
"type": "string",
"maxLength": 200
},
"plainPassword": {
"description": "User password.",
"type": "string",
"maxLength": 100
},
"secGroupId": {
"description": "The id of the security group this user belongs to. Reverse lookup is available using the /usergroups endpoint.",
"type": "int"
},
"accessKeyId": {
"description": "The user's access key for accessing the API.",
"type": "string"
},
"secretAccessKey": {
"description": "The user's secret access key for accessing the API.",
"type": "string"
},
"plainTextResetToken": {
"description": "Password reset token for user. Internal use only.",
"type": "String"
},
"passwordChangeRequired": {
"description": "If this user is required to change their password upon their next login.",
"type": "boolean"
},
"sendEmail": {
"description": "Whether or not an email should be sent to the user's email address upon creation.",
"type": "boolean"
},
"resetTokenGenerationDate": {
"description": "The date that the reset token is generated",
"type": "date"
},
"links": {
"description": "Reference link for current resource",
"type": "object",
"properties": {
"rel": {
"description": "The object that the link is related to.",
"type": "string"
},
"href": {
"description": "Reference link for current object.",
"type": "string"
}
}
}
}
}
}
},
"required": [
"status"
]
}
}
Example:
[
{
"status": "SUCCESS",
"total": 3,
"item": [
{
"object": "user",
"userId": "VGVzdC5hcGl1c2VyQGFjcXVpYS5jb20=",
"fullName": "Anonymous API User",
"enabled": true,
"emailAddress": "Test.apiuser@acquia.com",
"plainPassword": null,
"secGroupId": 39,
"accessKeyId": "1234asdfb",
"secretAccessKey": "abc123",
"plainTextResetToken": null,
"passwordChangeRequired": false,
"sendEmail": false,
"resetTokenGenerationDate": null,
"links": [
{
"rel": "self",
"href": "https://us-east-1-api.lift.acquia.com/api/v1/accounts/Test/users/VGVzdC5hcGl1c2VyQGFjcXVpYS5jb20="
}
]
},
{
"object": "user",
"userId": "VGVzdC5jb250ZW50aHViQGFjcXVpYS5jb20=",
"fullName": "Content Hub Admin User",
"enabled": true,
"emailAddress": "Test.contenthub@acquia.com",
"plainPassword": null,
"secGroupId": 41,
"accessKeyId": "1234asdfb",
"secretAccessKey": "abc123",
"plainTextResetToken": null,
"passwordChangeRequired": false,
"sendEmail": false,
"resetTokenGenerationDate": null,
"links": [
{
"rel": "self",
"href": "https://us-east-1-api.lift.acquia.com/api/v1/accounts/Test/users/VGVzdC5jb250ZW50aHViQGFjcXVpYS5jb20="
}
]
},
{
"object": "user",
"userId": "VGVzdC5mdWxsYXBpQGFjcXVpYS5jb20=",
"fullName": "Full API User",
"enabled": true,
"emailAddress": "Test.fullapi@acquia.com",
"plainPassword": null,
"secGroupId": 42,
"accessKeyId": "1234asdfb",
"secretAccessKey": "abc123",
"plainTextResetToken": null,
"passwordChangeRequired": false,
"sendEmail": false,
"resetTokenGenerationDate": null,
"links": [
{
"rel": "self",
"href": "https://us-east-1-api.lift.acquia.com/api/v1/accounts/Test/users/VGVzdC5mdWxsYXBpQGFjcXVpYS5jb20="
}
]
}
]
}
]
HTTP status code 403
The user credentials or the account are not permitted to use this endpoint.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/users_4xx.json",
"title": "Users",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Users endpoint request response when it has failed.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for users POST/PUT/GET/DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the users endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
{
"status": "FAILURE",
"errors": [
{
"message": "No permission to perform operations for the account provided",
"statusCode": "INVALID_ACCOUNTNAME"
}
]
}
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
post /users
Create a new user.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/users_post_payload.json",
"title": "User",
"type": "object",
"item": {
"title": "User",
"type": "object",
"properties": {
"status": {
"description": "Users POST request status. SUCCESS if succeeded, FAILURE otherwise",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for users POST",
"type": "array",
"items": {
"description": "Error object containing information on why the post failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"code": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 0
},
"item": {
"description": "User object that was passed in the api.",
"type": "object",
"properties": {
"fullName": {
"description": "Full name of the user.",
"type": "string",
"maxLength": 200
},
"enabled": {
"description": "If this user is enabled or not",
"type": "boolean"
},
"emailAddress": {
"description": "Email of the user. Used for login.",
"type": "string",
"maxLength": 200
},
"plainPassword": {
"description": "User password.",
"type": "string",
"maxLength": 100
},
"secGroupId": {
"description": "The id of the security group this user belongs to. Reverse lookup is available using the /usergroups endpoint.",
"type": "int"
},
"passwordChangeRequired": {
"description": "If this user is required to change their password upon their next login.",
"type": "boolean"
},
"sendEmail": {
"description": "Whether or not an email should be sent to the users email address upon creation.",
"type": "boolean"
}
}
}
},
"required": [
"fullName",
"emailAddress",
"plainPassword",
"secGroupId"
]
}
}
Example:
{
"emailAddress": "sample@acquia.com",
"fullName": "sample",
"secGroupId": 12345,
"plainPassword": "wlejfijspoirpokr",
"enabled": false,
"passwordChangeRequired": false,
"sendEmail": false
}
HTTP status code 201
The user was created successfully.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/userpostresult.json",
"title": "User Post Result",
"type": "object",
"item": {
"title": "User",
"type": "object",
"properties": {
"status": {
"description": "Create user request status. SUCCESS if succeeded, FAILURE otherwise",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for user post",
"type": "array",
"items": {
"description": "Error object containing information on why the post failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"code": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 0
},
"item": {
"description": "User object that is created.",
"type": "object",
"properties": {
"userId": {
"description": "User UID.",
"type": "string",
"maxLength": 100
},
"fullName": {
"description": "Full name of the user.",
"type": "string",
"maxLength": 200
},
"enabled": {
"description": "If this user is enabled or not",
"type": "boolean"
},
"emailAddress": {
"description": "Email of the user. Used for login.",
"type": "string",
"maxLength": 200
},
"plainPassword": {
"description": "User password.",
"type": "string",
"maxLength": 100
},
"secGroupId": {
"description": "The id of the security group this user belongs to. Reverse lookup is available using the /usergroups endpoint.",
"type": "int"
},
"accessKeyId": {
"description": "The user's access key for accessing the API.",
"type": "string"
},
"secretAccessKey": {
"description": "The user's secret access key for accessing the API.",
"type": "string"
},
"plainTextResetToken": {
"description": "Password reset token for user. Internal use only.",
"type": "String"
},
"passwordChangeRequired": {
"description": "If this user is required to change their password upon their next login.",
"type": "boolean"
},
"sendEmail": {
"description": "Whether or not an email should be sent to the user's email address upon creation.",
"type": "boolean"
},
"resetTokenGenerationDate": {
"description": "The date that the reset token is generated",
"type": "date"
},
"links": {
"description": "Reference link for current resource",
"type": "object",
"properties": {
"rel": {
"description": "The object that the link is related to.",
"type": "string"
},
"href": {
"description": "Reference link for current object.",
"type": "string"
}
}
}
}
}
},
"required": [
"status"
]
}
}
Example:
[
{
"status": "SUCCESS",
"item": {
"object": "user",
"id": "VGVzdC5hcGl1c2VyQGFjcXVpYS5jb20=",
"fullName": "Tom Cruise",
"enabled": true,
"email": "tom@example.com",
"plainPassword": null,
"secGroupId": 40,
"accessKeyId": "1234asdfb",
"secretAccessKey": "abc123",
"plainTextResetToken": null,
"passwordChangeRequired": false,
"sendEmail": false,
"resetTokenGenerationDate": null,
"links": [
{
"rel": "self",
"href": "https://us-east-1-api.lift.acquia.com/api/v1/accounts/Test/users/VGVzdC5hcGl1c2VyQGFjcXVpYS5jb20="
}
]
}
}
]
HTTP status code 400
If request payload is not valid (missing parameter/invalid parameters).
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/users_4xx.json",
"title": "Users",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Users endpoint request response when it has failed.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for users POST/PUT/GET/DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the users endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
[
{
"status": "FAILURE",
"errors": [
{
"message": "Missing email for creating user request",
"statusCode": "MISSING_EMAIL"
}
]
},
{
"status": "FAILURE",
"errors": [
{
"message": "Missing fullname for updating user request",
"statusCode": "MISSING_FULLNAME"
}
]
},
{
"status": "FAILURE",
"errors": [
{
"message": "Missing group id for updating user request",
"statusCode": "MISSING_GROUP_ID"
}
]
},
{
"status": "FAILURE",
"errors": [
{
"message": "Missing password for updating user request",
"statusCode": "MISSING_PASSWORD"
}
]
},
{
"status": "FAILURE",
"errors": [
{
"message": "User with the same email already exists",
"statusCode": "DUPLICATED_EMAIL"
}
]
},
{
"status": "FAILURE",
"errors": [
{
"message": "Password does not meet security constraints",
"statusCode": "INVALID_PASSWORD"
}
]
},
{
"status": "FAILURE",
"errors": [
{
"message": "User security group -1 does not exist for this account",
"statusCode": "INVALID_GROUP_ID"
}
]
}
]
HTTP status code 403
The user credentials or the account are not permitted to use this endpoint.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/users_4xx.json",
"title": "Users",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Users endpoint request response when it has failed.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for users POST/PUT/GET/DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the users endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
{
"status": "FAILURE",
"errors": [
{
"message": "No permission to perform operations for the account provided",
"statusCode": "INVALID_ACCOUNTNAME"
}
]
}
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
An individual user.
Get an individual user. User credentials belonging to a customer account that has linked customer accounts can view users in said linked customer accounts as well.
Update an individual user
Delete an individual user.
get /users/{user_id}
Get an individual user. User credentials belonging to a customer account that has linked customer accounts can view users in said linked customer accounts as well.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
URI Parameters
- user_id: required(string)
The UID of the user, which is their email address encoded using Base64 encoding (https://www.base64encode.org/).
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/user.json",
"title": "User",
"type": "object",
"item": {
"title": "User",
"type": "object",
"properties": {
"status": {
"description": "Get user request status. SUCCESS if succeeded, FAILURE otherwise",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for users get for an individual user",
"type": "array",
"items": {
"description": "Error object containing information on why the get failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"code": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 0
},
"item": {
"description": "User object that is passed to the api.",
"type": "object",
"properties": {
"userId": {
"description": "User UID.",
"type": "string",
"maxLength": 100
},
"fullName": {
"description": "Full name of the user.",
"type": "string",
"maxLength": 200
},
"enabled": {
"description": "If this user is enabled or not.",
"type": "boolean"
},
"emailAddress": {
"description": "Email of the user. Used for login.",
"type": "string",
"maxLength": 200
},
"plainPassword": {
"description": "User password.",
"type": "string",
"maxLength": 100
},
"secGroupId": {
"description": "The id of the security group this user belongs to. Reverse lookup is available using the /usergroups endpoint.",
"type": "int"
},
"accessKeyId": {
"description": "The user's access key for accessing the API.",
"type": "string"
},
"secretAccessKey": {
"description": "The user's secret access key for accessing the API.",
"type": "string"
},
"plainTextResetToken": {
"description": "Password reset token for user. Internal use only.",
"type": "String"
},
"passwordChangeRequired": {
"description": "If this user is required to change their password upon their next login.",
"type": "boolean"
},
"sendEmail": {
"description": "Whether or not an email should be sent to the user's email address upon creation.",
"type": "boolean"
},
"resetTokenGenerationDate": {
"description": "The date that the reset token is generated",
"type": "date"
},
"links": {
"description": "Reference link for current resource",
"type": "object",
"properties": {
"rel": {
"description": "The object that the link is related to.",
"type": "string"
},
"href": {
"description": "Reference link for current object.",
"type": "string"
}
}
}
}
}
},
"required": [
"status"
]
}
}
Example:
[
{
"status": "SUCCESS",
"item": [
{
"object": "user",
"id": "VGVzdC5hcGl1c2VyQGFjcXVpYS5jb20=",
"fullName": "Tom Cruise",
"enabled": true,
"email": "tom@example.com",
"plainPassword": null,
"secGroupId": 40,
"accessKeyId": "1234asdfb",
"secretAccessKey": "abc123",
"plainTextResetToken": null,
"passwordChangeRequired": false,
"sendEmail": false,
"resetTokenGenerationDate": null,
"links": [
{
"rel": "self",
"href": "https://us-east-1-api.lift.acquia.com/api/v1/accounts/Test/users/VGVzdC5hcGl1c2VyQGFjcXVpYS5jb20="
}
]
}
]
}
]
HTTP status code 400
If request payload is invalid (missing parameter / invalid parameters).
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/users_4xx.json",
"title": "Users",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Users endpoint request response when it has failed.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for users POST/PUT/GET/DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the users endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
[
{
"status": "FAILURE",
"errors": [
{
"message": "Missing fullname for updating user request",
"statusCode": "MISSING_FULLNAME"
}
]
},
{
"status": "FAILURE",
"errors": [
{
"message": "Missing group id for updating user request",
"statusCode": "MISSING_GROUP_ID"
}
]
},
{
"status": "FAILURE",
"errors": [
{
"message": "Password does not meet security constraints",
"statusCode": "INVALID_PASSWORD"
}
]
},
{
"status": "FAILURE",
"errors": [
{
"message": "User security group -1 does not exist for this account",
"statusCode": "INVALID_GROUP_ID"
}
]
},
{
"status": "FAILED",
"errors": [
{
"statusCode": "UNSUPPORTED_ARGUMENT",
"message": "Unsupported Argument - Cannot decode user identifier: 01254601b4444c68ad764"
}
]
}
]
HTTP status code 403
The user credentials or the account are not permitted to use this endpoint.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/users_4xx.json",
"title": "Users",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Users endpoint request response when it has failed.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for users POST/PUT/GET/DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the users endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
{
"status": "FAILURE",
"errors": [
{
"message": "No permission to perform operations for the account provided",
"statusCode": "INVALID_ACCOUNTNAME"
}
]
}
HTTP status code 404
User not found.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/users_4xx.json",
"title": "Users",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Users endpoint request response when it has failed.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for users POST/PUT/GET/DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the users endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
[
{
"status": "FAILURE",
"errors": [
{
"message": "User is not found",
"statusCode": "INVALID_USER_ID"
}
]
}
]
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
put /users/{user_id}
Update an individual user
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
URI Parameters
- user_id: required(string)
The UID of the user, which is their email address encoded using Base64 encoding (https://www.base64encode.org/).
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/users_put_payload.json",
"title": "User",
"type": "object",
"item": {
"title": "User",
"type": "object",
"properties": {
"status": {
"description": "Users PUT request status. SUCCESS if succeeded, FAILURE otherwise",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for users PUT",
"type": "array",
"items": {
"description": "Error object containing information on why the put failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"code": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 0
},
"item": {
"description": "User object that was passed in the api.",
"type": "object",
"properties": {
"fullName": {
"description": "Full name of the user.",
"type": "string",
"maxLength": 200
},
"enabled": {
"description": "If this user is enabled or not",
"type": "boolean"
},
"plainPassword": {
"description": "User password.",
"type": "string",
"maxLength": 100
},
"secGroupId": {
"description": "The id of the security group this user belongs to. Reverse lookup is available using the /usergroups endpoint.",
"type": "int"
},
"passwordChangeRequired": {
"description": "If this user is required to change their password upon their next login.",
"type": "boolean"
},
"sendEmail": {
"description": "Whether or not an email should be sent to the user's email address upon creation.",
"type": "boolean"
}
}
}
},
"required": [
"fullName",
"secGroupId"
]
}
}
Example:
{
"fullName": "sample_modified",
"secGroupId": 12345,
"plainPassword": "wlejfijspoirpokrmodified",
"enabled": true,
"passwordChangeRequired": false,
"sendEmail": true
}
HTTP status code 200
Body
Media type: application/json
Type: usersputresult
Example:
[
{
"status": "SUCCESS",
"item": {
"object": "user",
"id": "VGVzdC5hcGl1c2VyQGFjcXVpYS5jb20=",
"fullName": "Tom Cruise",
"enabled": true,
"email": "tom@example.com",
"plainPassword": null,
"secGroupId": 40,
"accessKeyId": "1234asdfb",
"secretAccessKey": "abc123",
"plainTextResetToken": null,
"passwordChangeRequired": false,
"sendEmail": false,
"resetTokenGenerationDate": null,
"links": [
{
"rel": "self",
"href": "https://us-east-1-api.lift.acquia.com/api/v1/accounts/Test/users/VGVzdC5hcGl1c2VyQGFjcXVpYS5jb20="
}
]
}
}
]
HTTP status code 400
If request payload is not valid (missing parameter/invalid parameters).
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/users_4xx.json",
"title": "Users",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Users endpoint request response when it has failed.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for users POST/PUT/GET/DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the users endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
[
{
"status": "FAILURE",
"errors": [
{
"message": "Missing fullname for updating user request",
"statusCode": "MISSING_FULLNAME"
}
]
},
{
"status": "FAILURE",
"errors": [
{
"message": "Missing group id for updating user request",
"statusCode": "MISSING_GROUP_ID"
}
]
},
{
"status": "FAILURE",
"errors": [
{
"message": "Password does not meet security constraints",
"statusCode": "INVALID_PASSWORD"
}
]
},
{
"status": "FAILURE",
"errors": [
{
"message": "User security group -1 does not exist for this account",
"statusCode": "INVALID_GROUP_ID"
}
]
},
{
"status": "FAILED",
"errors": [
{
"statusCode": "UNSUPPORTED_ARGUMENT",
"message": "Unsupported Argument - Cannot decode user identifier: 01254601b4444c68ad764"
}
]
}
]
HTTP status code 403
The user credentials or the account are not permitted to use this endpoint.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/users_4xx.json",
"title": "Users",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Users endpoint request response when it has failed.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for users POST/PUT/GET/DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the users endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
{
"status": "FAILURE",
"errors": [
{
"message": "No permission to perform operations for the account provided",
"statusCode": "INVALID_ACCOUNTNAME"
}
]
}
HTTP status code 404
User not found.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/users_4xx.json",
"title": "Users",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Users endpoint request response when it has failed.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for users POST/PUT/GET/DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the users endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
[
{
"status": "FAILURE",
"errors": [
{
"message": "User is not found",
"statusCode": "INVALID_USER_ID"
}
]
}
]
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
delete /users/{user_id}
Delete an individual user.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
URI Parameters
- user_id: required(string)
The UID of the user, which is their email address encoded using Base64 encoding (https://www.base64encode.org/).
HTTP status code 204
User deleted.
HTTP status code 403
The user credentials or the account are not permitted to use this endpoint.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/users_4xx.json",
"title": "Users",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Users endpoint request response when it has failed.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for users POST/PUT/GET/DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the users endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
{
"status": "FAILURE",
"errors": [
{
"message": "No permission to perform operations for the account provided",
"statusCode": "INVALID_ACCOUNTNAME"
}
]
}
HTTP status code 404
User not found.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/users_4xx.json",
"title": "Users",
"type": "object",
"item": {
"title": "Users",
"type": "object",
"properties": {
"status": {
"description": "Users endpoint request response when it has failed.",
"type": "string",
"maxLength": 10
},
"errors": {
"description": "List of errors for users POST/PUT/GET/DELETE",
"type": "array",
"items": {
"description": "Error object containing information on why the users endpoint failed",
"type": "object",
"properties": {
"message": {
"description": "Human readable error message",
"type": "string",
"maxLength": 200
},
"statusCode": {
"description": "Error code.",
"type": "string",
"maxLength": 100
}
}
},
"minItems": 1
}
},
"required": [
"status",
"errors"
]
}
}
Example:
[
{
"status": "FAILURE",
"errors": [
{
"message": "User is not found",
"statusCode": "INVALID_USER_ID"
}
]
}
]
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
reset user's password by email
post /users/resetPassword
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/user_reset_password.json",
"title": "UserEmail",
"type": "object",
"items": {
"title": "UserEmail",
"type": "object",
"properties": {
"emailAddress": {
"description": "Email address of the user",
"type": "string"
}
}
}
}
Example:
{
"emailAddress": "sample@acquia.com"
}
HTTP status code 200
reset password email is sent if emailAddress provided is valid
HTTP status code 400
email adress is not valid, no email will be sent
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
Usergroups V1
A user security group is a collection of permissions automatically provisioned and manually by administrators in the Profile Manager dashboard. The URL for this API endpoint is https://{liftProfileManagerURL}/api/v1/accounts/{account_id}/usergroups.
Get a list of all user security groups for the customer account.
get /usergroups
Get a list of all user security groups for the customer account.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/usergroups.json",
"title": "Goals",
"type": "object",
"item": {
"title": "UserGroup",
"type": "array",
"item": {
"description": "A list of user security groups that is passed to the api.",
"type": "object",
"properties": {
"userGroupId": {
"description": "UID of the user security group",
"type": "int"
},
"name": {
"description": "Name of the user security group",
"type": "string",
"maxLength": 200
},
"decription": {
"description": "Description of the user security group",
"type": "string",
"maxLength": 200
},
"links": {
"description": "Reference link for current resource",
"type": "object",
"properties": {
"rel": {
"description": "The object that the link is related to.",
"type": "string"
},
"href": {
"description": "Reference link for current object.",
"type": "string"
}
}
}
}
}
}
}
Example:
[
{
"data": [
{
"userGroupId": 38,
"name": "Test Administrators",
"description": "Test Administrators Group",
"links": [
{
"rel": "self",
"href": "https://us-east-1-api.lift.acquia.com/api/v1/accounts/Test/usergroups/38"
}
]
},
{
"userGroupId": 39,
"name": "Test Api Users",
"description": "Test Api Users Group",
"links": [
{
"rel": "self",
"href": "https://us-east-1-api.lift.acquia.com/api/v1/accounts/Test/usergroups/39"
}
]
},
{
"userGroupId": 40,
"name": "Test Users",
"description": "Test Users Group",
"links": [
{
"rel": "self",
"href": "https://us-east-1-api.lift.acquia.com/api/v1/accounts/Test/usergroups/40"
}
]
},
{
"userGroupId": 41,
"name": "Test Content Hub Administrators",
"description": "Test Content Hub Administrators Group",
"links": [
{
"rel": "self",
"href": "https://us-east-1-api.lift.acquia.com/api/v1/accounts/Test/usergroups/41"
}
]
},
{
"userGroupId": 42,
"name": "Test Full Api Users",
"description": "Test Full Api Users Group",
"links": [
{
"rel": "self",
"href": "https://us-east-1-api.lift.acquia.com/api/v1/accounts/Test/usergroups/42"
}
]
}
],
"links": [
{
"rel": "self",
"href": "https://us-east-1-api.lift.acquia.com/api/v1/accounts/Test/usergroups"
}
]
}
]
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
An individual user security group
Get a user security group for the customer account.
get /usergroups/{user_group_id}
Get a user security group for the customer account.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
URI Parameters
- user_group_id: required(string)
The UID of the user security group.
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/usergroup.json",
"title": "UserGroup",
"type": "object",
"items": {
"title": "UserGroup",
"type": "object",
"properties": {
"userGroupId": {
"description": "UID of the user security group",
"type": "integer"
},
"name": {
"description": "Name of the user security group",
"type": "string",
"maxLength": 200
},
"decription": {
"description": "Description of the user security group",
"type": "string",
"maxLength": 200
},
"links": {
"description": "Reference link for current resource",
"type": "object",
"properties": {
"rel": {
"description": "The object that the link is related to.",
"type": "string"
},
"href": {
"description": "Reference link for current object.",
"type": "string"
}
}
}
}
}
}
Example:
[
{
"userGroupId": 39,
"name": "Test Api Users",
"description": "Test Api Users Group",
"links": [
{
"rel": "self",
"href": "https://us-east-1-api.lift.acquia.com/api/v1/accounts/Test/usergroups/39"
}
]
}
]
HTTP status code 404
User security group is not found.
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
Visitor Query
Return an individual visitor's profile information from DynamoDB.
Return the visitor profile, which can include person, touch or event level data.
get /visitor_query
Return the visitor profile, which can include person, touch or event level data.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
Query Parameters
- identifier: required(string)
Visitor's identity information.
- identifierType: required(string)
Type of visitor's identity information - must be account, email, facebook, tracking, twitter, amp, or any custom resolvable identifier.
- personTables: required(string)
Data table values to return - must be identifiers, person, touch, event, or any comma-delimited combination of these values.
HTTP status code 200
The visitor profile was able to be retrieved.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/visitor_query_response.json",
"type": "object",
"title": "Visitor Query",
"description": "Visitor Query Response.",
"properties": {
"person": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Unique person ID — Acquia Lift Profile Manager internal value."
},
"engagementScore": {
"type": "integer",
"description": "Numeric representation of this person's engagement with the brand that is calculated by customer-specific rules (for example, a visitor with a newsletter subscription is more engaged than a periodic visitor); calculated here as the sum of all engagement scores at the event level over a 90-day period."
},
"lastTouch": {
"type": "string",
"pattern": "^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T(0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]:[0-5][0-9]Z$",
"description": "Time and date of the person's last touch."
},
"firstTouch": {
"type": "string",
"pattern": "^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T(0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]:[0-5][0-9]Z$",
"description": "Time and date of the person's first touch."
},
"firstTimeVisitor": {
"type": "boolean",
"description": "Indicates whether a person is a first-time visitor. This criteria will match for the duration of the very first touch of a new person."
},
"subscriberStatus": {
"type": "string",
"description": "The person's subscription status — optional and provided externally."
},
"customerId": {
"type": "integer",
"description": "Internal Acquia Lift Profile Manager customer ID."
},
"primaryIdentifier": {
"type": "string",
"description": "Tracking ID assigned to a website visitor and stored in their cookies; if there are multiple identifiers, this field reflects the first assigned identifier."
},
"primaryIdentifierTypeId": {
"type": "integer",
"description": "Person's identifier type — this will always have a value of 2 to reflect the first tracking ID assigned by Acquia Lift Profile Manager."
},
"active": {
"type": "boolean",
"description": "The person is a unique entity; false indicates this person was merged into another person during identity resolution (touches and events remain linked to the original person)."
},
"lastModifiedDate": {
"type": "string",
"pattern": "^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T(0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]:[0-5][0-9]Z$",
"description": "Time and date that the row was last modified."
},
"anonymousVisitor": {
"type": "boolean",
"description": "Person without any identity information, such as an email address or account ID."
},
"doNotTrack": {
"type": "boolean",
"description": "Indicates whether or not the person has opted out of tracking and personalization."
},
"^(person)_udf([1-9]|[1-4][0-9]|50)$": {
"type": "string",
"maxLength": 1000,
"description": "Custom fields for person."
}
}
},
"identifiers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Unique person identifier ID — Acquia Lift Profile Manager internal value."
},
"identifier": {
"type": "string",
"description": "Person's identifier information, based on the person_identifier_type_id."
},
"personIdentifierTypeId": {
"type": "integer",
"description": "Person's identifier type (options: 1 - email, 2 - tracking identifier, 3 - account id, 4 - Facebook account, 5 - Twitter account, 6 - name, 100 - amp)."
},
"personIdentifierTypeName": {
"type": "string",
"description": "Person's identifier type name (options: email, tracking, account, facebook, twitter, name, amp, etc.)"
},
"personIdentifierTypeName": {
"type": "string",
"description": "Person's identifier type name (options: email, tracking, account, facebook, twitter, name, etc)"
},
"personId": {
"type": "integer",
"description": "Unique person ID — Acquia Lift Profile Manager internal value."
},
"customerId": {
"type": "integer",
"description": "Internal Acquia Lift Profile Manager customer ID."
},
"active": {
"type": "boolean",
"description": "The person is a unique entity; false indicates this person was merged into another person during identity resolution (touches and events remain linked to the original person)."
}
}
}
},
"touches": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Unique touch ID — Profile Manager internal value."
},
"touchDuration": {
"type": "integer",
"description": "Touch duration in minutes."
},
"touchDurationInSeconds": {
"type": "integer",
"description": "Touch duration in seconds."
},
"touchDate": {
"type": "string",
"pattern": "^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T(0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]:[0-5][0-9]Z$",
"description": "Touch start-date/time."
},
"channelType": {
"type": "string",
"description": "Source for this touch (for example, Web or Call Center)."
},
"engagementScore": {
"type": "integer",
"description": "Numeric representation (calculated by customer-specific rules) of how this touch describes a person's engagement with the brand."
},
"referrer": {
"type": "string",
"description": "Referrer URL."
},
"url": {
"type": "string",
"description": "URL."
},
"referrerDomain": {
"type": "string",
"description": "Referrer base domain."
},
"numberOfPageViews": {
"type": "integer",
"description": "Number of page views."
},
"identifier": {
"type": "string",
"description": "Touch session identifier."
},
"visitorIp": {
"type": "string",
"maxLength": 45,
"description": "Visitor's IP address (supports both IPv4 and IPv6 addresses)."
},
"userAgentString": {
"type": "string",
"maxLength": 2000,
"description": "Visitor's user agent."
},
"operatingSystem": {
"type": "string",
"description": "Operating system of the visitor's machine."
},
"platform": {
"type": "string",
"description": "Platform type of the visitor's machine."
},
"browser": {
"type": "string",
"description": "Browser used by the visitor."
},
"lastModifiedDate": {
"type": "string",
"pattern": "^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T(0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]:[0-5][0-9]Z$",
"description": "Time and date that the row was last modified."
},
"personId": {
"type": "integer",
"description": "Points to the associated person's person_id for this touch."
},
"customerId": {
"type": "integer",
"description": "Internal Acquia Lift Profile Manager customer ID assignment."
},
"personIdentifierId": {
"type": "integer",
"description": "Internal Profile Manager ID for the person_identifier that was triggered by this touch."
},
"customerSiteId": {
"type": "string",
"maxLength": 20,
"description": "The internal customer site ID matching external_site_id in the configuration database."
},
"^(touch)_udf([1-9]|1[0-9]|20)$": {
"type": "string",
"maxLength": 1000,
"description": "Custom fields for touch."
},
"events": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Unique event ID - Acquia Lift Profile Manager internal value."
},
"name": {
"type": "string",
"description": "Name of the event (for example, Content View)."
},
"engagementScore": {
"type": "integer",
"description": "Numeric representation (calculated by customer-specific rules) of how this event describes a person's engagement with the brand."
},
"eventDate": {
"type": "string",
"pattern": "^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T(0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]:[0-5][0-9]Z$",
"description": "Event date-time."
},
"eventCategoryType": {
"type": "string",
"description": "Event's category type."
},
"accountId": {
"type": "string",
"description": "Customer account Id."
},
"referrer": {
"type": "string",
"description": "Referrer URL."
},
"pageType": {
"type": "string",
"maxLength": 200,
"description": "Category of page the visitor viewed (examples include article page, tag page, and home page)."
},
"pageUrl": {
"type": "string",
"description": "Page URL."
},
"captureIdentifier": {
"type": "string",
"description": "Event identifier."
},
"contentType": {
"type": "string",
"maxLength": 200,
"description": "Content type to which a piece of visitor-viewed content belongs."
},
"contentSection": {
"type": "string",
"maxLength": 1000,
"description": "Content section of an article."
},
"contentTitle": {
"type": "string",
"maxLength": 1000,
"description": "Content title of an article/page."
},
"keywords": {
"type": "string",
"maxLength": 1000,
"description": "Content keywords of an article."
},
"contentId": {
"type": "string",
"maxLength": 22,
"description": "Content id of an article."
},
"touchId": {
"type": "integer",
"description": "Link to an existing id for a touch — Acquia Lift Profile Manager internal value."
},
"personId": {
"type": "integer",
"description": "Link to an existing id for a person — Acquia Lift Profile Manager internal value."
},
"customerId": {
"type": "integer",
"description": "Internal Acquia Lift Profile Manager customer ID."
},
"eventCategoryId": {
"type": "integer",
"description": "Code for the event (refer to the name field for its human-readable name) — Acquia Lift Profile Manager internal value."
},
"customerSiteId": {
"type": "string",
"maxLength": 20,
"description": "The internal customer site ID matching external_site_id in the configuration database."
},
"clientDate": {
"type": "string",
"pattern": "^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T(0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]:[0-5][0-9]Z$",
"description": "Browser's date and time when the event was made."
},
"clientTimezone": {
"type": "string",
"description": "Browser's timezone when the event was made."
},
"customerSiteExternalId": {
"type": "string",
"maxLength": 20,
"description": "The external customer site ID matching external_site_id in the configuration database."
},
"lastModifiedDate": {
"type": "string",
"pattern": "^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T(0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]:[0-5][0-9]Z$",
"description": "Time and date that the row was last modified."
},
"personalizationName": {
"type": "string",
"maxLength": 1000,
"description": "Name of personalization associated with an event."
},
"personalizationMachineName": {
"type": "string",
"maxLength": 1000,
"description": "Machine name of personalization associated with an event."
},
"personalizationChosenVariation": {
"type": "string",
"maxLength": 1000,
"description": "The variation (decision) chosen for an event."
},
"personalizationAudienceName": {
"type": "string",
"maxLength": 1000,
"description": "The name of the audience."
},
"personalizationDecisionPolicy": {
"type": "string",
"maxLength": 1000,
"description": "The decision policy used - for example, explore or target."
},
"personalizationGoalName": {
"type": "string",
"maxLength": 1000,
"description": "The name of the goal reached."
},
"personalizationGoalValue": {
"type": "string",
"maxLength": 1000,
"description": "The value of the goal reached."
},
"decisionSlotId": {
"type": "string",
"maxLength": 1000,
"description": "Decision Slot Id"
},
"decisionSlotName": {
"type": "string",
"maxLength": 1000,
"description": "Decision Slot Name"
},
"decisionRuleId": {
"type": "string",
"maxLength": 1000,
"description": "Decision Rule Id"
},
"decisionRuleName": {
"type": "string",
"maxLength": 1000,
"description": "Decision Rule Name"
},
"decisionRuleSegmentId": {
"type": "string",
"maxLength": 1000,
"description": "Decision Rule Segment Id"
},
"decisionRuleSegmentName": {
"type": "string",
"maxLength": 1000,
"description": "Decision Rule Segment Name"
},
"decisionRuleType": {
"type": "string",
"maxLength": 1000,
"description": "Decision Rule Type"
},
"decisionContentId": {
"type": "string",
"maxLength": 1000,
"description": "Decision Content Id"
},
"decisionContentName": {
"type": "string",
"maxLength": 1000,
"description": "Decision Content Name"
},
"decisionGoalId": {
"type": "string",
"maxLength": 1000,
"description": "Decision Goal Id"
},
"decisionGoalName": {
"type": "string",
"maxLength": 1000,
"description": "Decision Goal Name"
},
"decisionGoalValue": {
"type": "string",
"maxLength": 1000,
"description": "Decision Goal Value"
},
"decisionViewMode": {
"type": "string",
"maxLength": 1000,
"description": "Decision View Mode"
},
"decisionPolicy": {
"type": "string",
"maxLength": 1000,
"description": "Decision Policy"
},
"decision_campaign_id": {
"type": "string",
"maxLength": 1000,
"description": "Unique ID of the rule's campaign"
},
"decision_campaign_name": {
"type": "string",
"maxLength": 1000,
"description": "Descriptive name of the rule's campaign"
},
"decision_rule_ab_variation": {
"type": "string",
"maxLength": 1000,
"description": "Name of the AB test rule's chosen variation"
},
"^(event)_udf([1-9]|[1-4][0-9]|50)$": {
"type": "string",
"maxLength": 1000,
"description": "Custom fields for event."
}
}
}
}
}
}
}
}
}
Example:
{
"person": {
"id": 1946437,
"engagementScore": 1,
"lastTouch": "2018-05-02T21:21:36Z",
"firstTouch": "2018-05-02T21:21:36Z",
"firstTimeVisitor": true,
"subscriberStatus": "Unknown",
"customField1": "testContentSection",
"customField2": "testContentType",
"customField3": "testContentKeywords",
"customField4": "personUDF4",
"customField5": "personUDF5",
"customField6": "personUDF6",
"customField7": "personUDF7",
"customField8": "personUDF8",
"customField9": "personUDF9",
"customField10": "personUDF10",
"customField11": "personUDF11",
"customField12": "personUDF12",
"customField13": "personUDF13",
"customField14": "personUDF14",
"customField15": "personUDF15",
"customField16": "personUDF16",
"customField17": "personUDF17",
"customField18": "personUDF18",
"customField19": "personUDF19",
"customField20": "personUDF20",
"customField21": "personUDF21",
"customField22": "personUDF22",
"customField23": "personUDF23",
"customField24": "personUDF24",
"customField25": "personUDF25",
"customField26": "personUDF26",
"customField27": "personUDF27",
"customField28": "personUDF28",
"customField29": "personUDF29",
"customField30": "personUDF30",
"customField31": "personUDF31",
"customField32": "personUDF32",
"customField33": "personUDF33",
"customField34": "personUDF34",
"customField35": "personUDF35",
"customField36": "personUDF36",
"customField37": "personUDF37",
"customField38": "personUDF38",
"customField39": "personUDF39",
"customField40": "personUDF40",
"customField41": "personUDF41",
"customField42": "personUDF42",
"customField43": "personUDF43",
"customField44": "personUDF44",
"customField45": "personUDF45",
"customField46": "personUDF46",
"customField47": "personUDF47",
"customField48": "personUDF48",
"customField49": "personUDF49",
"customField50": "personUDF50",
"customerId": 12345,
"primaryIdentifier": "tkeLec0tfe9w9dvpw0wiFk",
"primaryIdentifierTypeId": 2,
"active": true,
"lastModifiedDate": "2018-05-02T21:21:43Z",
"anonymousVisitor": false,
"doNotTrack": false
},
"identifiers": [
{
"id": 3762181,
"identifier": "tkeLec0tfe9w9dvpw0wiFk",
"personIdentifierTypeId": 2,
"personIdentifierTypeName": "tracking",
"personId": 1946437,
"customerId": 12345,
"active": true
},
{
"id": 3762182,
"identifier": "sample@acquia.com",
"personIdentifierTypeId": 1,
"personIdentifierTypeName": "email",
"personId": 1946437,
"customerId": 12345,
"active": true
},
{
"id": 3762185,
"identifier": "testACCOUNT_sample",
"personIdentifierTypeId": 3,
"personIdentifierTypeName": "account",
"personId": 1946437,
"customerId": 12345,
"active": true
},
{
"id": 3762187,
"identifier": "testAMP_sample",
"personIdentifierTypeId": 100,
"personIdentifierTypeName": "amp",
"personId": 1946437,
"customerId": 12345,
"active": true
},
{
"id": 3762183,
"identifier": "testNAME_sample",
"personIdentifierTypeId": 6,
"personIdentifierTypeName": "name",
"personId": 1946437,
"customerId": 12345,
"active": true
},
{
"id": 3762186,
"identifier": "testFACEBOOK_sample",
"personIdentifierTypeId": 4,
"personIdentifierTypeName": "facebook",
"personId": 1946437,
"customerId": 12345,
"active": true
},
{
"id": 3762184,
"identifier": "testTWITTER_sample",
"personIdentifierTypeId": 5,
"personIdentifierTypeName": "twitter",
"personId": 1946437,
"customerId": 12345,
"active": true
}
],
"touches": [
{
"id": 1234567,
"touchDuration": 0,
"touchDurationInSeconds": 0,
"touchDate": "2018-05-02T21:21:36Z",
"channelType": "Web",
"engagementScore": 1,
"referrer": "www.drupal.org",
"url": "www.acquia.com",
"numberOfPageViews": 0,
"identifier": "4f5baf25da524ek689390",
"customField1": "touchUDF1",
"customField2": "touchUDF2",
"customField3": "touchUDF3",
"customField4": "touchUDF4",
"customField5": "touchUDF5",
"customField6": "touchUDF6",
"customField7": "touchUDF7",
"customField8": "touchUDF8",
"customField9": "touchUDF9",
"customField10": "touchUDF10",
"customField11": "touchUDF11",
"customField12": "touchUDF12",
"customField13": "touchUDF13",
"customField14": "touchUDF14",
"customField15": "touchUDF15",
"customField16": "touchUDF16",
"customField17": "touchUDF17",
"customField18": "touchUDF18",
"customField19": "touchUDF19",
"customField20": "touchUDF20",
"visitorIp": "192.168.1.1",
"userAgentString": "Mozilla\/5.0 (Macintosh; Intel Mac OS X 10.10; rv:41.0) Gecko\/20100101 Firefox\/41.0",
"operatingSystem": "Mac OS X",
"platform": "DESKTOP",
"browser": "FIREFOX",
"lastModifiedDate": "2018-05-02T21:21:43Z",
"personId": 1946437,
"customerId": 12345,
"personIdentifierId": 3762181,
"customerSiteId": 3494,
"events": [
{
"id": 3884539,
"name": "Goal",
"engagementScore": 1,
"eventDate": "2018-05-02T21:21:36Z",
"eventCategoryType": "OTHER",
"accountId": "SAMPLECUSTOMER",
"referrer": "www.drupal.org",
"pageType": "testPageType",
"pageUrl": "www.acquia.com",
"captureIdentifier": "5ba827b282454c2baeac7",
"contentType": "testContentType",
"contentSection": "testContentSection",
"contentTitle": "testContentTitle",
"keywords": "testContentKeywords",
"contentId": "67b5fe10c71e4f3cba8e2",
"touchId": 1234567,
"personId": 1946437,
"customerId": 12345,
"eventCategoryId": 10068,
"customerSiteId": 3494,
"clientDate": "2018-05-02T17:21:23Z",
"clientTimezone": "America\/Anguilla",
"customerSiteExternalId": "SITE1",
"lastModifiedDate": "2018-05-02T21:21:43Z",
"customField1": "eventUDF1",
"customField3": "eventUDF3",
"customField4": "eventUDF4",
"customField5": "eventUDF5",
"customField6": "eventUDF6",
"customField7": "eventUDF7",
"customField8": "eventUDF8",
"customField9": "eventUDF9",
"customField10": "eventUDF10",
"customField11": "eventUDF11",
"customField12": "eventUDF12",
"customField13": "eventUDF13",
"customField14": "eventUDF14",
"customField15": "eventUDF15",
"customField16": "eventUDF16",
"customField17": "eventUDF17",
"customField18": "eventUDF18",
"customField19": "eventUDF19",
"customField20": "eventUDF20",
"customField21": "eventUDF21",
"customField22": "eventUDF22",
"customField23": "eventUDF23",
"customField24": "eventUDF24",
"customField25": "eventUDF25",
"customField26": "eventUDF26",
"customField27": "eventUDF27",
"customField28": "eventUDF28",
"customField29": "eventUDF29",
"customField30": "eventUDF30",
"customField31": "eventUDF31",
"customField32": "eventUDF32",
"customField33": "eventUDF33",
"customField34": "eventUDF34",
"customField35": "eventUDF35",
"customField36": "eventUDF36",
"customField37": "eventUDF37",
"customField38": "eventUDF38",
"customField39": "eventUDF39",
"customField40": "eventUDF40",
"customField41": "eventUDF41",
"customField42": "eventUDF42",
"customField43": "eventUDF43",
"customField44": "eventUDF44",
"customField45": "eventUDF45",
"customField46": "eventUDF46",
"customField47": "eventUDF47",
"customField48": "eventUDF48",
"customField49": "eventUDF49",
"customField50": "eventUDF50",
"personalizationName": "testPersonalizationName",
"personalizationMachineName": "testPersonalizationMachineName",
"personalizationChosenVariation": "testPersonalizationChosenVariation",
"personalizationAudienceName": "testPersonalizationAudienceName",
"personalizationDecisionPolicy": "testPersonalizationDecisionPolicy",
"personalizationGoalName": "testPersonalizationGoalName",
"personalizationGoalValue": "10",
"decisionSlotId": "testDecisionSlotId",
"decisionSlotName": "testDecisionSlotName",
"decisionRuleId": "testDecisionRuleId",
"decisionRuleName": "testDecisionRuleName",
"decisionContentId": "testDecisionContentId",
"decisionContentName": "testDecisionContentName",
"decisionGoalId": "testDecisionGoalId",
"decisionGoalName": "testDecisionGoalName",
"decisionGoalValue": "testDecisionGoalValue",
"decisionViewMode": "testDecisionViewMode",
"decisionPolicy": "testDecisionPolicy",
"decisionRuleAbVariation": "testDecisionRuleAbVariation",
"decisionCampaignId": "testDecisionCampaignId",
"decisionCampaignName": "testDecisionCampaignName"
}
]
}
]
}
HTTP status code 400
The identifierType is an invalid value for the customer account, and/or the personTables parameter value is invalid.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/visitor_query_400.json",
"type": "object",
"title": "Visitor Query",
"description": "Visitor Query 400 Response.",
"properties": {
"status": {
"description": "Visitor Query endpoint request response when it has failed.",
"type": "string"
},
"errors": {
"type": "array",
"items": [
{
"type": "object",
"properties": {
"statusCode": {
"type": "string"
},
"message": {
"type": "string"
}
},
"required": [
"statusCode",
"message"
]
}
]
}
},
"required": [
"status",
"errors"
]
}
Example:
####### Example 1 - Identifier type parameter is missing ###########
{
"status": "FAILED",
"errors": [
{
"statusCode": "error",
"message": "Error: Missing identifier type parameter."
}
]
}
####### Example 2 - Identifier parameter is missing ###########
{
"status": "FAILED",
"errors": [
{
"statusCode": "error",
"message": "Error: Missing identifier parameter."
}
]
}
####### Example 3 - Person tables parameter is missing ###########
{
"status": "FAILED",
"errors": [
{
"statusCode": "error",
"message": "Error: Missing person tables parameter."
}
]
}
####### Example 4 - Invalid Person tables ###########
{
"status": "FAILED",
"errors": [
{
"statusCode": "error",
"message": "Error: Invalid person tables."
}
]
}
####### Example 5 - Invalid person identifier type ###########
{
"status": "FAILED",
"errors": [
{
"statusCode": "error",
"message": "Error: Invalid person identifier type"
}
]
}
HTTP status code 404
The visitor profile could not be found.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/visitor_query_404.json",
"type": "object",
"title": "Visitor Query",
"description": "Visitor Query 404 Response.",
"properties": {
"status": {
"description": "Visitor Query endpoint request response when it has failed.",
"type": "string"
},
"errors": {
"type": "array",
"items": [
{
"type": "object",
"properties": {
"statusCode": {
"type": "string"
},
"message": {
"type": "string"
}
},
"required": [
"statusCode",
"message"
]
}
]
}
},
"required": [
"status",
"errors"
]
}
Example:
{
"status": "FAILED",
"errors": [
{
"statusCode": "error",
"message": "Error: No person was found with identifier 'test@example.com' and identifier type 'email'."
}
]
}
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
Reset Password
Reset password given an email address for the Profile Manager dashboard. The URL for this API endpoint is https://{liftProfileManagerURL}/api/v1/reset_password.
Reset password given an email address.
post /reset_password
Reset password given an email address.
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
Body
Media type: application/json
Type: reset_password_post_request
Example:
{
"email": "user@server.com"
}
HTTP status code 200
The reset password request email was successfully sent.
HTTP status code 400
The reset password request was invalid. Either the email, or the request model failed to validate.
HTTP status code 500
The reset password request could not be completed by the server due to an internal error.
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
Column MetaData Config
Customer Config API used to get column metadata config. The URLs for this API endpoint are: | https://{liftProfileManagerURL}/api/v1/{accountId}/configure/column-metadata.
Retrieves a list of all column metadata associated with account id
get /configure/column-metadata
Retrieves a list of all column metadata associated with account id
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
Query Parameters
- start: (number)
Start index for the pagination of resultset. The default value is 0. Valid values from 0 to 10000.
Example:
start=0
- rows: (number)
Page size for the pagination of resultset. The default value is 10, and using -1 will return all results, irrespective of the start position specified. Valid values from -1 to 10000.
Example:
rows=5
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/column_metadata_v2_getall_response.json",
"title": "Get All Column Metadata",
"type": "object",
"items": {
"title": "Column Metadata",
"type": "object",
"required": [
"total",
"data"
],
"properties": {
"total": {
"type": "integer",
"description": "Total number of column metadata for the customer"
},
"data": {
"type": "array",
"description": "Array of returned Column metadata",
"required": [
"id",
"displayName",
"tableName",
"accessor",
"columnType",
"description",
"fieldName"
],
"items": {
"type": "object",
"properties": {
"id": {
"description": "Column metadata Id.",
"type": "string",
"maxLength": 100
},
"displayName": {
"description": "Human readable name of the column metadata.",
"type": "string",
"maxLength": 100
},
"tableName": {
"description": "Table name for which this column metadata belongs to.",
"type": "string",
"maxLength": 100
},
"accessor": {
"description": "Accessor name for column metadata",
"type": "string",
"maxLength": 3000
},
"columnType": {
"description": "Column type",
"type": "string",
"maxLength": 100,
"enum": [
"STRING",
"BOOLEAN",
"DATE",
"INTEGER",
"FLOAT",
"COMMA_SEPARATED_LIST"
]
},
"description": {
"description": "Human readable description of the column metadata.",
"type": "string",
"maxLength": 3000
},
"fieldName": {
"description": "Field name for column metadata",
"type": "string",
"maxLength": 3000
}
}
}
}
}
}
}
Example:
{
"data": [
{
"id": "11547",
"displayName": "testsha1",
"tableName": "PERSON",
"accessor": "getAnonymousVisitor",
"columnType": "BOOLEAN",
"description": "dsadasdad",
"fieldName": "ANONYMOUS_VISITOR"
},
{
"id": "11548",
"displayName": "test123",
"tableName": "PERSON",
"accessor": "getArticlesRemaining",
"columnType": "BOOLEAN",
"description": "hjhjhjhj",
"fieldName": "ARTICLES_REMAINING"
},
{
"id": "11549",
"displayName": "gjgjgj",
"tableName": "PERSON",
"accessor": "getCustomField1",
"columnType": "BOOLEAN",
"description": "hjhjkhkj",
"fieldName": "CUSTOM_FIELD_1"
},
{
"id": "11550",
"displayName": "khhkhk",
"tableName": "PERSON",
"accessor": "getCustomField2",
"columnType": "BOOLEAN",
"description": "hjkh",
"fieldName": "CUSTOM_FIELD_2"
},
{
"id": "11551",
"displayName": "kllhvv",
"tableName": "PERSON",
"accessor": "getCustomField3",
"columnType": "BOOLEAN",
"description": "jhhjk",
"fieldName": "CUSTOM_FIELD_3"
},
{
"id": "11552",
"displayName": "bbmmbb",
"tableName": "PERSON",
"accessor": "getCustomField4",
"columnType": "BOOLEAN",
"description": "hhkhk",
"fieldName": "CUSTOM_FIELD_4"
},
{
"id": "11553",
"displayName": "hhjkh",
"tableName": "PERSON",
"accessor": "getCustomField5",
"columnType": "BOOLEAN",
"description": "hhhjk",
"fieldName": "CUSTOM_FIELD_5"
},
{
"id": "11554",
"displayName": "hhjhkjkj",
"tableName": "PERSON",
"accessor": "getCustomField6",
"columnType": "BOOLEAN",
"description": "khhk",
"fieldName": "CUSTOM_FIELD_6"
},
{
"id": "11555",
"displayName": "jgjhhgg",
"tableName": "PERSON",
"accessor": "getCustomField7",
"columnType": "BOOLEAN",
"description": "khhhk",
"fieldName": "CUSTOM_FIELD_7"
},
{
"id": "11556",
"displayName": "hkhhkhk",
"tableName": "PERSON",
"accessor": "getCustomField8",
"columnType": "BOOLEAN",
"description": "hhhjkhjk",
"fieldName": "CUSTOM_FIELD_8"
},
{
"id": "11557",
"displayName": "kkkllkk;ll;",
"tableName": "PERSON",
"accessor": "getCustomField9",
"columnType": "BOOLEAN",
"description": "lll",
"fieldName": "CUSTOM_FIELD_9"
}
],
"total": 11
}
HTTP status code 400
If request payload is invalid (missing parameter / invalid parameters).
Body
Media type: application/json
Type: any
Example:
{
"status": "FAILED",
"errors": [
{
"statusCode": "INVALID_START_ID",
"message": "start value should be in between 0 to 10000"
}
]
}
HTTP status code 401
Unauthorized access to endpoint
HTTP status code 403
No permission to perform operations for the account provided
Body
Media type: application/json
Type: any
Example:
{
"status": "FAILED",
"errors": [
{
"statusCode": "INVALID_ACCOUNTNAME",
"message": "No permission to perform operations for the account provided"
}
]
}
HTTP status code 500
An internal server error occurred while getting all column metadata from API
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.
Retrieves a column metadata associated by ID
get /configure/column-metadata/{id}
Retrieves a column metadata associated by ID
Acquia HMAC v2 authorization, which is based on Acquia Lift Profile Manager account configuration. See details here: https://docs.acquia.com/lift/api/hmacv2
URI Parameters
- id: required(string)
HTTP status code 200
Get Column metadata by ID was successful
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "schemas/column_metadata_v2_get_response.json",
"title": "Get Column Metadata",
"type": "object",
"properties": {
"id": {
"description": "Column metadata Id.",
"type": "string",
"maxLength": 100
},
"displayName": {
"description": "Human readable name of the column metadata.",
"type": "string",
"maxLength": 100
},
"tableName": {
"description": "Table name for which this column metadata belongs to.",
"type": "string",
"maxLength": 100
},
"accessor": {
"description": "Accessor name for column metadata",
"type": "string",
"maxLength": 3000
},
"columnType": {
"description": "Column type",
"type": "string",
"maxLength": 100,
"enum": [
"STRING",
"BOOLEAN",
"DATE",
"INTEGER",
"FLOAT",
"COMMA_SEPARATED_LIST"
]
},
"description": {
"description": "Human readable description of the column metadata.",
"type": "string",
"maxLength": 3000
},
"fieldName": {
"description": "Field name for column metadata",
"type": "string",
"maxLength": 3000
}
},
"required": [
"id",
"displayName",
"tableName",
"accessor",
"columnType",
"description",
"fieldName"
]
}
Example:
{
"id": "11554",
"displayName": "hhjhkjkj",
"tableName": "PERSON",
"accessor": "getCustomField6",
"columnType": "BOOLEAN",
"description": "khhk",
"fieldName": "CUSTOM_FIELD_6"
}
HTTP status code 401
Unauthorized access to endpoint
HTTP status code 403
No permission to perform operations for the account provided
Body
Media type: application/json
Type: any
Example:
{
"status": "FAILED",
"errors": [
{
"statusCode": "INVALID_ACCOUNTNAME",
"message": "No permission to perform operations for the account provided"
}
]
}
HTTP status code 404
Invalid column metadata ID was supplied.
Body
Media type: application/json
Type: any
Example:
{
"status": "FAILED",
"errors": [
{
"statusCode": "INVALID_COLUMN_METADATA_ID",
"message": "Customer column metadata does not exist for id 115549"
}
]
}
HTTP status code 500
An internal server error occurred when getiting column metatadata from API.
Secured by AcquiaHMACv2
Headers
- Authorization: required(string)
Additional HTTP headers: Authorization: <HMACAuthorization> X-Authorization-Timestamp: <Unix Timestamp In Seconds> X-Authorization-Content-SHA256: <HashedContent> (if Content-Length > 0)
HTTP status code 200
Request succeeded successfully
HTTP status code 201
Request entity was created successfully
HTTP status code 202
Request was accepted.
HTTP status code 204
Request entity was deleted successfully.
HTTP status code 400
Request entity contains missing or invalid values for the parameters.
HTTP status code 401
Bad or expired token. This can happen if the user revoked or expired an access token. To fix, you should re-authenticate the user.
HTTP status code 403
Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. The user may also not be allowed to use a particular API endpoint.
HTTP status code 404
Request entity cannot be found.