Get a person
curl --request GET \
--url https://api.clearpolicy.app/api/v1/people/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.clearpolicy.app/api/v1/people/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.clearpolicy.app/api/v1/people/{id}', 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.clearpolicy.app/api/v1/people/{id}",
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.clearpolicy.app/api/v1/people/{id}"
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.clearpolicy.app/api/v1/people/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.clearpolicy.app/api/v1/people/{id}")
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{
"id": "<string>",
"organization_id": "<string>",
"name": "<string>",
"email": "jsmith@example.com",
"source": "oauth",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"phone": "<string>",
"source_id": "<string>",
"archived_at": "2023-11-07T05:31:56Z"
}{
"error": "<string>"
}{
"message": "<string>",
"payment_url": "<string>"
}{
"error": "<string>"
}{
"message": "Too Many Attempts."
}People
Get a person
Returns a single person by their ULID.
GET
/
people
/
{id}
Get a person
curl --request GET \
--url https://api.clearpolicy.app/api/v1/people/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.clearpolicy.app/api/v1/people/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.clearpolicy.app/api/v1/people/{id}', 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.clearpolicy.app/api/v1/people/{id}",
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.clearpolicy.app/api/v1/people/{id}"
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.clearpolicy.app/api/v1/people/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.clearpolicy.app/api/v1/people/{id}")
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{
"id": "<string>",
"organization_id": "<string>",
"name": "<string>",
"email": "jsmith@example.com",
"source": "oauth",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"phone": "<string>",
"source_id": "<string>",
"archived_at": "2023-11-07T05:31:56Z"
}{
"error": "<string>"
}{
"message": "<string>",
"payment_url": "<string>"
}{
"error": "<string>"
}{
"message": "Too Many Attempts."
}Authorizations
Bearer token created in ClearPolicy API settings with the api:use scope.
Path Parameters
The ULID of the person.
Response
The requested person.
The ULID of the person.
The ULID of the organization.
The full name of the person.
The email address of the person.
How the person was created.
Available options:
oauth, web, system, planning_center When the person was created.
When the person was last updated.
The phone number in international format, or null.
An external identifier from the originating system, or null.
When the person was archived, or null if active.
Last modified on August 4, 2026
Was this page helpful?