Identify
Users sit at the core of Attuitive. Everything revolves them and generally all data relates to a user, or users. /identify
provides a way to create and read them through identifiers.
Create a new user
POST
/identify
Inserts a new user to the workspace.
Headers
Content-Type*
application/json
Authorization*
Bearer <token>
Body
identifiers
object
An object containing identifying properties on the user.
traits
object
An object containing attributes of the user.
Response
Important: Fields with a
*
must be included in your request!
Get an existing user
GET
/identify/:userId
Gets a user by their ID.
Headers
Content-Type*
application/json
Authorization*
Bearer <token>
Query
:userId
*
string
ID of the user. usr_[A-Za-z0-9]{16}
Response
Search users
GET
/identify
...param
includes any number of additional parameters to filter identifiers based on. The user must match all parameters. Sending no parameters is the same as retrieving all users.
For example, to search by an email you would send: /identify?email=test@example.com
TIP: Nested searches are also supported. If your identifiers includes
{"name": {"first": "John", "last": "Doe"}}
you can search for this by sending/identify?name.last=Doe
.
Headers
Content-Type*
application/json
Authorization*
Bearer <token>
Query
limit
number
Maximum number of results to return between 1
& 100
. Defaults to 50
.
pageToken
string
Token for the page to retrieve. Available on requests with multiple pages of results. Starts with ey...
...param
string
Parameters that should match a property in a user's identifiers
e.g. phoneNumber
or email
Important: It is expected you will encode the URL to escape specific characters. For example, if searching on a phone number, the
+
character should be encoded as%2B
.
Response
Update a user
POST
/identify/:userId
Updates an existing user's identifiers.
Updates use a append & merge approach. Properties will override an existing value if that key already and any new properties will be added.
You do not need to send existing properties when updating, these will continue to be persisted (or overwritten per the above section). To remove a value, send the key and a null
value. For example to remove phoneNumber
:
Headers
Content-Type*
application/json
Authorization*
Bearer <token>
Query
:userId
*
string
ID of the user. usr_[A-Za-z0-9]{16}
Body
identifiers
object
An object containing identifying properties on the user
Response
Delete a user
DELETE
/identify/:userId
Delete a user by ID.
Headers
Content-Type*
application/json
Authorization*
Bearer <token>
Query
:userId
*
string
ID of the user. usr_[A-Za-z0-9]{16}
Response
Last updated