Find user by user key (cookie)
Long awaited feature to search users (including visitors without email!) by their user key, which is also their cookie value of __ca__chat.
GET
/users/search/?key=:key
Attributes
Type
Description
key
string
User key value, second value of user model, right after ID. Example key:
g3FaYocCy0U6
curl -X GET -H "Authorization: Token <your_64_char_api_key>" "https://<your_app_subdomain>.user.com/api/public/users/search/?key=:key"
Example response
{
"first_seen": null,
"notifications": true,
"city": null,
"tags": [
{
"name": "tag",
"id": 1441
}
],
"last_contacted": null,
"page_views": 0,
"status": "visitor",
"chat_id": "Chat ID is deprecated and will be removed in future",
"linkedin_url": null,
"facebook_url": null,
"gender": "unknown",
"last_seen": null,
"last_ip": null,
"updated_at": "2017-06-07T10:29:15.955873Z",
"gravatar_url": null,
"id": 19678376,
"os_type": null,
"browser": null,
"twitter_url": null,
"lists": [],
"created_at": "2017-06-07T09:41:13.466897Z",
"name": "Jane Doe",
"resolution": null,
"timezone": null,
"unsubscribed": false,
"browser_language": null,
"country": null,
"google_url": null,
"key": "g3FaYocCy0U6",
"email": "example@email.com",
"score": 0,
"attributes": [
{
"value": true,
"name": "Example attr",
"name_std": "example_attr",
"id": 1109
},
{
"value": "attribute value",
"name": "My string attr",
"name_std": "my_string_attr",
"id": 2429
}
],
"region": null,
"phone_number": null
}
var settings = {
"async": true,
"crossDomain": true,
"url": "https://<your_app_subdomain>.user.com/api/public/users/search/?key=:key",
"method": "GET",
"headers": {
"authorization": "Token <your_64_char_api_key>"
}
}
$.ajax(settings).done(function (response) {
console.log(response);
});
var data = null;
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("GET", "https://<your_app_subdomain>.user.com/api/public/users/search/?key=:key");
xhr.setRequestHeader("authorization", "Token <your_64_char_api_key>");
xhr.send(data);
var request = require("request");
var options = { method: 'GET',
url: 'https://<your_app_subdomain>.user.com/api/public/users/search/',
qs: { key: ':key' },
headers: { authorization: 'Token <your_64_char_api_key>' } };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://<your_app_subdomain>.user.com/api/public/users/search/?key=:key",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => array(
"authorization: Token <your_64_char_api_key>"
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
import requests
url = "https://<your_app_subdomain>.user.com/api/public/users/search/"
querystring = {"key":":key"}
headers = {'authorization': 'Token <your_64_char_api_key>'}
response = requests.request("GET", url, headers=headers, params=querystring)
print(response.text)
import http.client
conn = http.client.HTTPSConnection("<your_app_subdomain>.user.com")
headers = { 'authorization': "Token <your_64_char_api_key>" }
conn.request("GET", "/api/public/users/search/?key=:key", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))