Account Management
Users
GET
/
users
Users
curl --request GET \
--url https://demand.researchdesk.com/users \
--header 'Authorization: <api-key>'import requests
url = "https://demand.researchdesk.com/users"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://demand.researchdesk.com/users', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://demand.researchdesk.com/users",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://demand.researchdesk.com/users"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://demand.researchdesk.com/users")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://demand.researchdesk.com/users")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"total_users": 2,
"page": 1,
"page_size": 50,
"users": [
{
"id": "6f1c2a84-9b37-4e15-8d2a-1c4e7b90a6d3",
"name": "Jordan Hale",
"email": "jordan.hale@example.com",
"account_ids": [
"b2e4d8f1-0c56-4a93-9f71-3e8a5c1d7b24"
]
},
{
"id": "91d0e6c3-4a28-4f7b-b5e1-8c2d6a0f3e57",
"name": "Riley Chen",
"email": "riley.chen@example.com",
"account_ids": [
"c7a1f3e9-5d42-4b80-a6c8-2f9e1d4b8a35"
]
}
]
}Rate limit: 10 requests/second
Each object in
Query String Parameters
| Parameter | Description | Required | Example |
|---|---|---|---|
user_ids | Comma delimited value of user IDs to return. | No | ?user_ids=1,2,3 |
account_ids | Comma delimited value of account IDs for which associated user objects will be returned. | No | account_ids=1,2,3 |
page | Integer value of the page being retrieved | No; if omitted, the value defaults to 0 | ?page=2 |
page_size | Integer value dictating the number of objects returned per page. | No; if omitted, the value defaults to 50 | ?page_size=100 |
Response
| Field | Description |
|---|---|
total_users | Total number of users matching the query across all pages. |
page | Current page number. |
page_size | Number of users returned on this page. |
users | Array of user objects for this page. |
users includes id, name, email, and account_ids.Authorizations
JWT access token sent directly in the Authorization header (no Bearer prefix). Accepted tokens: (1) Cognito JWT from POST /tokens, or (2) WorkOS AuthKit access token issued for your Research Desk organization. POST /tokens still issues Cognito tokens only.
Query Parameters
Comma-delimited list of User IDs to retrieve.
Comma-delimited list of Account IDs to filter users by.
Page number to retrieve. Defaults to 1.
Number of results per page. Defaults to 50.
Was this page helpful?
Users
curl --request GET \
--url https://demand.researchdesk.com/users \
--header 'Authorization: <api-key>'import requests
url = "https://demand.researchdesk.com/users"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://demand.researchdesk.com/users', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://demand.researchdesk.com/users",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://demand.researchdesk.com/users"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://demand.researchdesk.com/users")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://demand.researchdesk.com/users")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"total_users": 2,
"page": 1,
"page_size": 50,
"users": [
{
"id": "6f1c2a84-9b37-4e15-8d2a-1c4e7b90a6d3",
"name": "Jordan Hale",
"email": "jordan.hale@example.com",
"account_ids": [
"b2e4d8f1-0c56-4a93-9f71-3e8a5c1d7b24"
]
},
{
"id": "91d0e6c3-4a28-4f7b-b5e1-8c2d6a0f3e57",
"name": "Riley Chen",
"email": "riley.chen@example.com",
"account_ids": [
"c7a1f3e9-5d42-4b80-a6c8-2f9e1d4b8a35"
]
}
]
}