Custom Attributes

Use the Custom Attributes API to apply customizable data or characteristics to each of your subscribers. This API will either create a new custom attribute if it doesn't already exist or update an existing one with the new value provided. You can then build segments based on that information to send targeted campaigns and journeys. This data cannot contain any sensitive or special categories of information as defined in applicable data protection and privacy laws, including the California Consumer Privacy Act (CCPA) and California Privacy Rights Act (CPRA). See a list of specific categories of data you cannot share with Attentive here.

Custom Attributes

Make a call to this endpoint for any attribute-based data. There are no limits to the amount of custom attributes that can be created. Note that you can create net-new properties with this API, however, it cannot be used to create new values for an existing UI-created property name. If a property name is created through the Attentive platform, all possible property values must also be defined in the platform. For example, if a property has possible values of "Adult, Teen, Children's", those are the only values that will be accepted through the API. This does not apply for properties with the type "Custom input", for example: Full Name. Also, please note that the API does not support arrays. For example, attempting to pass an array such as '["chicago", "new york"]' for an attribute like 'favorite_city' will result in a 400 error.

Note : The maximum length for an attribute name is 200 characters.

Request
Security:
OAuthFlow (attributes:write)
Request Body schema: application/json
properties
required
object

Any metadata associated with the attribute. Object keys are expected to be strings. Object values can be any type. The key will be assigned a type corresponding to the type seen of the first value. For example, if 'Age' is passed with the first value of '24', 'Age' will be typed as a 'Number'. There is no need to pass strings in double quotes. Both object keys and object values are case sensitive. "Favorite color" and "Favorite Color" would be considered different custom attributes.

required
object (EventUser)

User associated with the action. Note that this is a visitor to the site and does not need to be actively subscribed to Attentive. Phone, email, or an external identifier (clientUserId or another custom identifier) are required

Responses
200

Ok

400

Invalid parameter in request query or body

401

Unauthorized

403

Access Denied

404

The specified resource was not found

429

The user has sent too many requests in a given amount of time

500

Internal Server Error

post/attributes/custom
Request samples
application/json
{
  • "properties": {
    },
  • "user": {
    }
}

Get Custom Attributes for a User

Make a call to this endpoint to retrieve all custom attribute data associated with a user. You can query this endpoint by either phone or email.

Note: You must include a single query parameter, phone or email. Including both will result in a 400 error.

Request
Security:
OAuthFlow (attributes:write)
query Parameters
phone
string

A user’s phone number in E.164 format. The '+' sign in the phone number must be encoded in the URL query parameter as '%2B'

Example: phone=+13115552368
email
string

A user's email

Example: email=test@gmail.com
Responses
200

Successfully accepted get custom attributes request

400

Invalid parameter in request query or body

401

Unauthorized

403

Access Denied

404

The specified resource was not found

429

The user has sent too many requests in a given amount of time

500

Internal Server Error

get/attributes/custom
Request samples
curl -i -X GET \
  'https://api.attentivemobile.com/v1/attributes/custom?phone=%2B13115552368&email=test%40gmail.com' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'
Response samples
application/json
[
  • {
    }
]