curl --request GET \
--url https://api.develop.fourdos.dev/v1/users \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.develop.fourdos.dev/v1/users"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.develop.fourdos.dev/v1/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://api.develop.fourdos.dev/v1/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: Bearer <token>"
],
]);
$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://api.develop.fourdos.dev/v1/users"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.develop.fourdos.dev/v1/users")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.develop.fourdos.dev/v1/users")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"members": [
{
"id": "<string>",
"display_name": "<string>",
"first_name": "<string>",
"last_name": "<string>",
"membership": {
"id": "<string>",
"external_id": "<string>",
"status": "active",
"joined_at": "2023-11-07T05:31:56Z"
}
}
],
"has_more": true
}{
"error": {
"code": "<string>",
"status": 123,
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"status": 123,
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"status": 123,
"message": "<string>",
"details": {}
}
}Find members of your organization by name or email
Pass exactly one of q or email. email is an exact match, ignoring case, and answers at most one member. Every word of q must appear in the member’s display name, first name or last name, in any order, ignoring case and accents (zoe finds Zoë); punctuation is compared as stored. Ordered by display name. Removed memberships are left out and locked ones carry their status. Each response is capped at limit rows with no cursor, which bounds a response and not what a key can learn: repeated searches can list your whole member directory, and your organization key is allowed to.
curl --request GET \
--url https://api.develop.fourdos.dev/v1/users \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.develop.fourdos.dev/v1/users"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.develop.fourdos.dev/v1/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://api.develop.fourdos.dev/v1/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: Bearer <token>"
],
]);
$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://api.develop.fourdos.dev/v1/users"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.develop.fourdos.dev/v1/users")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.develop.fourdos.dev/v1/users")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"members": [
{
"id": "<string>",
"display_name": "<string>",
"first_name": "<string>",
"last_name": "<string>",
"membership": {
"id": "<string>",
"external_id": "<string>",
"status": "active",
"joined_at": "2023-11-07T05:31:56Z"
}
}
],
"has_more": true
}{
"error": {
"code": "<string>",
"status": 123,
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"status": 123,
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"status": 123,
"message": "<string>",
"details": {}
}
}Authorizations
Organization API key (org_...) sent as Authorization: Bearer <key>. Keys are scoped to one organization; every request operates within that tenant.
Query Parameters
A name: 2 to 100 characters, at most 5 words. Required unless email is given.
2 - 100An exact email address, compared ignoring case. Required unless q is given.
1 <= x <= 50