List people
curl --request GET \
--url https://api-us.hihobbes.com/api/v1/people \
--header 'Authorization: Bearer <token>'import requests
url = "https://api-us.hihobbes.com/api/v1/people"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api-us.hihobbes.com/api/v1/people', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"people": [
{
"id": "0190a0b3-7f62-7df2-a52e-32b08f86c172",
"email": "maya@acme.example",
"name": "Maya Chen",
"phone": "+1-415-555-0142",
"business": "Acme",
"totalSessions": 3,
"firstSeenAt": "2026-06-18T16:12:00Z",
"lastSeenAt": "2026-07-10T18:42:16Z",
"totalTimeSpentSeconds": 1842,
"firstSource": "google",
"lastSource": "linkedin",
"lastLocation": "San Francisco, California, US",
"qualificationStatus": "qualified",
"buyingIntent": "high",
"accountDomain": "acme.example",
"summaryMarkdown": "Maya is leading Acme's technical evaluation.",
"qualificationRationale": "<string>",
"qualificationSource": "automatic",
"qualificationAssessedAt": "2023-11-07T05:31:56Z",
"qualificationRubricVersionId": "<string>",
"overallIntent": "low",
"intentScore": 0,
"intentCalculatedAt": "2023-11-07T05:31:56Z"
}
],
"pagination": {
"total": 248,
"limit": 50,
"offset": 0
}
}{
"detail": "API key required or invalid."
}{
"detail": "API key does not include the required scope."
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}{
"detail": "Rate limit or organization quota exceeded."
}People
List people
Return prospect profiles aggregated across sessions.
GET
/
api
/
v1
/
people
List people
curl --request GET \
--url https://api-us.hihobbes.com/api/v1/people \
--header 'Authorization: Bearer <token>'import requests
url = "https://api-us.hihobbes.com/api/v1/people"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api-us.hihobbes.com/api/v1/people', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"people": [
{
"id": "0190a0b3-7f62-7df2-a52e-32b08f86c172",
"email": "maya@acme.example",
"name": "Maya Chen",
"phone": "+1-415-555-0142",
"business": "Acme",
"totalSessions": 3,
"firstSeenAt": "2026-06-18T16:12:00Z",
"lastSeenAt": "2026-07-10T18:42:16Z",
"totalTimeSpentSeconds": 1842,
"firstSource": "google",
"lastSource": "linkedin",
"lastLocation": "San Francisco, California, US",
"qualificationStatus": "qualified",
"buyingIntent": "high",
"accountDomain": "acme.example",
"summaryMarkdown": "Maya is leading Acme's technical evaluation.",
"qualificationRationale": "<string>",
"qualificationSource": "automatic",
"qualificationAssessedAt": "2023-11-07T05:31:56Z",
"qualificationRubricVersionId": "<string>",
"overallIntent": "low",
"intentScore": 0,
"intentCalculatedAt": "2023-11-07T05:31:56Z"
}
],
"pagination": {
"total": 248,
"limit": 50,
"offset": 0
}
}{
"detail": "API key required or invalid."
}{
"detail": "API key does not include the required scope."
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}{
"detail": "Rate limit or organization quota exceeded."
}Requires
people:read.
People are ordered by lastSeenAt, newest first. Use intent, qualification,
date, and partial-email filters to build prospect cohorts.
Person profiles evolve as later sessions update activity, intent,
qualification, and summary fields.Authorizations
bearerapiKeyHeader
Hobbes API key with the hb_live_ prefix.
Query Parameters
Partial email match
high | medium | low | none (comma-separated)
qualified | unqualified (comma-separated)
Filter by last seen (ISO 8601)
Filter by last seen (ISO 8601)
Number of records to return. Defaults to 50 and cannot exceed 200.
Required range:
1 <= x <= 200Zero-based number of records to skip. Use with pagination.total to request the next page.
Required range:
0 <= x <= 1000000