Skip to content

listPeople

GET
/people
curl --request GET \
--url 'http://localhost:8080/api/v1/people?circleId=per_01j9x3k8m2q4r5s6t7v8w9y0z1&platform=instagram&sort=name&limit=30' \
--cookie hs_session=<hs_session>
q
string
<= 100 characters

Matches display name, relation label, handles. Pinyin and Thai aware.

circleId
string
/^[a-z]{2,3}_[0-9a-hjkmnp-tv-z]{26}$/
platform
string
Allowed values: instagram facebook line wechat bluesky x douyin xiaohongshu truthsocial
sort
string
default: name
Allowed values: name recent_activity least_visited
limit
integer
default: 30 >= 1 <= 100
cursor
string
<= 512 characters

People page.

Media typeapplication/json
object
items
required
Array
object
id
required
string
/^[a-z]{2,3}_[0-9a-hjkmnp-tv-z]{26}$/
displayName
required
string
relationLabel
string | null
kind
required
string
Allowed values: family friend creator other
closeness
required

1 = closest. Weights the feed and hearth picks.

integer
>= 1 <= 3
avatar
One of:
object
id
required
string
/^[a-z]{2,3}_[0-9a-hjkmnp-tv-z]{26}$/
url
required

Signed URL, valid 24 h.

string
thumbUrl
string
cardUrl
string
posterUrl
string
mime
required
string
width
integer
height
integer
durationMs
integer
blurhash
string
alt
string
accounts
required
Array
object
id
required
string
/^[a-z]{2,3}_[0-9a-hjkmnp-tv-z]{26}$/
platform
required
string
Allowed values: instagram facebook line wechat bluesky x douyin xiaohongshu truthsocial
handle
required
string
displayName
string | null
profileUrl
required
string format: uri
deepLinks
required

Client picks app link on mobile when installed, else web.

object
web
required
string format: uri
ios
string
android
string
copyValue

Value to copy when no link exists (e.g. WeChat ID).

string
hintKey

I18n key with instructions, e.g. “platformWechatOpenHint”.

string
personId
required
string
/^[a-z]{2,3}_[0-9a-hjkmnp-tv-z]{26}$/
platformUserId
string | null
avatar
One of:
object
id
required
string
/^[a-z]{2,3}_[0-9a-hjkmnp-tv-z]{26}$/
url
required

Signed URL, valid 24 h.

string
thumbUrl
string
cardUrl
string
posterUrl
string
mime
required
string
width
integer
height
integer
durationMs
integer
blurhash
string
alt
string
fetchTier
required
string
Allowed values: server agent closed
status
required
string
Allowed values: pending ok stale needs_agent login_required not_found error paused closed
statusDetailKey
string | null
fetchIntervalS
integer | null
lastSuccessAt
One of:
string format: date-time
nextFetchAt
One of:
string format: date-time
createdAt
required
string format: date-time
circleIds
required
Array<string>
notes
string | null
lastVisitedAt
One of:
string format: date-time
latestMomentAt
One of:
string format: date-time
snoozedUntil
One of:
string format: date-time
createdAt
required
string format: date-time
updatedAt
required
string format: date-time
deletedAt
One of:
string format: date-time
nextCursor
required
string | null

Examples

Exampleseed

Derived from fixtures/seed.json.

{
"items": [
{
"accounts": [
{
"avatar": null,
"createdAt": "2026-09-17T09:00:00.000Z",
"deepLinks": {
"android": "https://www.instagram.com/_u/mom.wong.bkk/",
"ios": "instagram://user?username=mom.wong.bkk",
"web": "https://www.instagram.com/mom.wong.bkk/"
},
"displayName": null,
"fetchIntervalS": 10800,
"fetchTier": "agent",
"handle": "mom.wong.bkk",
"id": "acc_01j93283xpmc4y04hy7rmmt7y7",
"lastSuccessAt": "2026-10-17T08:00:00.000Z",
"nextFetchAt": null,
"personId": "per_01j9wst6a8vjc69r66y6fj70t5",
"platform": "instagram",
"platformUserId": null,
"profileUrl": "https://www.instagram.com/mom.wong.bkk/",
"status": "ok",
"statusDetailKey": null
},
{
"avatar": null,
"createdAt": "2026-09-17T09:00:00.000Z",
"deepLinks": {
"android": "fb://profile/",
"ios": "fb://profile/",
"web": "https://www.facebook.com/pranee.wong"
},
"displayName": null,
"fetchIntervalS": 10800,
"fetchTier": "agent",
"handle": "pranee.wong",
"id": "acc_01j9wkspf8va1pwmaj7qwb7e1f",
"lastSuccessAt": "2026-10-17T07:00:00.000Z",
"nextFetchAt": null,
"personId": "per_01j9wst6a8vjc69r66y6fj70t5",
"platform": "facebook",
"platformUserId": null,
"profileUrl": "https://www.facebook.com/pranee.wong",
"status": "ok",
"statusDetailKey": null
}
],
"avatar": null,
"circleIds": [
"cir_01j9kaptqa5dcqne4nmnrbp86d"
],
"closeness": 1,
"createdAt": "2026-09-17T09:00:00.000Z",
"deletedAt": null,
"displayName": "Mom",
"id": "per_01j9wst6a8vjc69r66y6fj70t5",
"kind": "family",
"lastVisitedAt": "2026-10-17T08:40:00.000Z",
"latestMomentAt": "2026-10-17T07:30:00.000Z",
"notes": "Loves the Sunday market.",
"relationLabel": "แม่",
"snoozedUntil": null,
"updatedAt": "2026-09-17T09:00:00.000Z"
},
{
"accounts": [
{
"avatar": null,
"createdAt": "2026-09-17T09:00:00.000Z",
"deepLinks": {
"android": "https://www.instagram.com/_u/lin.cooks/",
"ios": "instagram://user?username=lin.cooks",
"web": "https://www.instagram.com/lin.cooks/"
},
"displayName": null,
"fetchIntervalS": 10800,
"fetchTier": "agent",
"handle": "lin.cooks",
"id": "acc_01j9te0skfktnnmw6zvew46azb",
"lastSuccessAt": "2026-10-17T08:00:00.000Z",
"nextFetchAt": null,
"personId": "per_01j9f8r1agkh6g3jp30xcwnytc",
"platform": "instagram",
"platformUserId": null,
"profileUrl": "https://www.instagram.com/lin.cooks/",
"status": "ok",
"statusDetailKey": null
}
],
"avatar": null,
"circleIds": [
"cir_01j9kaptqa5dcqne4nmnrbp86d"
],
"closeness": 2,
"createdAt": "2026-09-17T09:00:00.000Z",
"deletedAt": null,
"displayName": "Lin",
"id": "per_01j9f8r1agkh6g3jp30xcwnytc",
"kind": "family",
"lastVisitedAt": null,
"latestMomentAt": "2026-10-17T06:00:00.000Z",
"notes": null,
"relationLabel": "Cousin",
"snoozedUntil": null,
"updatedAt": "2026-09-17T09:00:00.000Z"
},
{
"accounts": [
{
"avatar": null,
"createdAt": "2026-09-17T09:00:00.000Z",
"deepLinks": {
"android": "https://line.me/R/ti/p/~grandma_noi",
"ios": "https://line.me/R/ti/p/~grandma_noi",
"web": "https://line.me/R/ti/p/~grandma_noi"
},
"displayName": null,
"fetchIntervalS": 21600,
"fetchTier": "closed",
"handle": "~grandma_noi",
"id": "acc_01j9e81cm1p0x7vysze8aeqsje",
"lastSuccessAt": null,
"nextFetchAt": null,
"personId": "per_01j9w5jqj9nm7gdsybfz53mcjr",
"platform": "line",
"platformUserId": null,
"profileUrl": "https://line.me/R/ti/p/~grandma_noi",
"status": "closed",
"statusDetailKey": null
}
],
"avatar": null,
"circleIds": [
"cir_01j9kaptqa5dcqne4nmnrbp86d"
],
"closeness": 1,
"createdAt": "2026-09-17T09:00:00.000Z",
"deletedAt": null,
"displayName": "Grandma Noi",
"id": "per_01j9w5jqj9nm7gdsybfz53mcjr",
"kind": "family",
"lastVisitedAt": "2026-10-08T09:00:00.000Z",
"latestMomentAt": null,
"notes": "Likes orchids. Birthday 3 Feb.",
"relationLabel": "ยาย",
"snoozedUntil": null,
"updatedAt": "2026-09-17T09:00:00.000Z"
},
{
"accounts": [
{
"avatar": null,
"createdAt": "2026-09-17T09:00:00.000Z",
"deepLinks": {
"android": "weixin://",
"copyValue": "wei_chengdu88",
"hintKey": "platformWechatOpenHint",
"ios": "weixin://",
"web": "https://weixin.qq.com/"
},
"displayName": null,
"fetchIntervalS": null,
"fetchTier": "closed",
"handle": "wei_chengdu88",
"id": "acc_01j9e8wtqqwvx5c5qxjqyd78he",
"lastSuccessAt": null,
"nextFetchAt": null,
"personId": "per_01j9yjkch7a0ayzz8784jtf08t",
"platform": "wechat",
"platformUserId": null,
"profileUrl": "https://weixin.qq.com/",
"status": "closed",
"statusDetailKey": null
},
{
"avatar": null,
"createdAt": "2026-09-17T09:00:00.000Z",
"deepLinks": {
"android": "snssdk1128://user/profile/98765432101",
"ios": "snssdk1128://user/profile/98765432101",
"web": "https://www.douyin.com/user/MS4wLjABAAAAweichengdu0000000000000000000000"
},
"displayName": null,
"fetchIntervalS": 10800,
"fetchTier": "agent",
"handle": "MS4wLjABAAAAweichengdu0000000000000000000000",
"id": "acc_01j936xmqyft8qfbq7srt9h04r",
"lastSuccessAt": null,
"nextFetchAt": null,
"personId": "per_01j9yjkch7a0ayzz8784jtf08t",
"platform": "douyin",
"platformUserId": "98765432101",
"profileUrl": "https://www.douyin.com/user/MS4wLjABAAAAweichengdu0000000000000000000000",
"status": "needs_agent",
"statusDetailKey": null
}
],
"avatar": null,
"circleIds": [
"cir_01j9kaptqa5dcqne4nmnrbp86d"
],
"closeness": 2,
"createdAt": "2026-09-17T09:00:00.000Z",
"deletedAt": null,
"displayName": "Uncle Wei",
"id": "per_01j9yjkch7a0ayzz8784jtf08t",
"kind": "family",
"lastVisitedAt": null,
"latestMomentAt": null,
"notes": null,
"relationLabel": "舅舅",
"snoozedUntil": null,
"updatedAt": "2026-09-17T09:00:00.000Z"
},
{
"accounts": [
{
"avatar": null,
"createdAt": "2026-09-17T09:00:00.000Z",
"deepLinks": {
"android": "xhsdiscover://user/5f1a2b3c4d5e6f7a8b9c0d1e",
"ios": "xhsdiscover://user/5f1a2b3c4d5e6f7a8b9c0d1e",
"web": "https://www.xiaohongshu.com/user/profile/5f1a2b3c4d5e6f7a8b9c0d1e"
},
"displayName": null,
"fetchIntervalS": 21600,
"fetchTier": "agent",
"handle": "5f1a2b3c4d5e6f7a8b9c0d1e",
"id": "acc_01j91es8krfwqg9fhg08x4698y",
"lastSuccessAt": "2026-10-17T04:00:00.000Z",
"nextFetchAt": null,
"personId": "per_01j9nt02btj9vmesaexmby3q67",
"platform": "xiaohongshu",
"platformUserId": null,
"profileUrl": "https://www.xiaohongshu.com/user/profile/5f1a2b3c4d5e6f7a8b9c0d1e",
"status": "ok",
"statusDetailKey": null
}
],
"avatar": null,
"circleIds": [],
"closeness": 3,
"createdAt": "2026-09-17T09:00:00.000Z",
"deletedAt": null,
"displayName": "小厨娘",
"id": "per_01j9nt02btj9vmesaexmby3q67",
"kind": "creator",
"lastVisitedAt": null,
"latestMomentAt": "2026-10-17T03:00:00.000Z",
"notes": null,
"relationLabel": null,
"snoozedUntil": null,
"updatedAt": "2026-09-17T09:00:00.000Z"
},
{
"accounts": [
{
"avatar": null,
"createdAt": "2026-09-17T09:00:00.000Z",
"deepLinks": {
"android": "https://bsky.app/profile/alice.bsky.social",
"ios": "https://bsky.app/profile/alice.bsky.social",
"web": "https://bsky.app/profile/alice.bsky.social"
},
"displayName": null,
"fetchIntervalS": 3600,
"fetchTier": "server",
"handle": "alice.bsky.social",
"id": "acc_01j9cw1k85px7z7ysr9gtg04cc",
"lastSuccessAt": "2026-10-17T08:30:00.000Z",
"nextFetchAt": null,
"personId": "per_01j9br69ze0ftz3jf7396q38vf",
"platform": "bluesky",
"platformUserId": "did:plc:abcdefghijklmnopqrstuvwx",
"profileUrl": "https://bsky.app/profile/alice.bsky.social",
"status": "ok",
"statusDetailKey": null
}
],
"avatar": null,
"circleIds": [
"cir_01j9ebw22bbvzap1dk44j2y9eh"
],
"closeness": 2,
"createdAt": "2026-09-17T09:00:00.000Z",
"deletedAt": null,
"displayName": "Alice",
"id": "per_01j9br69ze0ftz3jf7396q38vf",
"kind": "friend",
"lastVisitedAt": null,
"latestMomentAt": "2026-10-17T05:00:00.000Z",
"notes": null,
"relationLabel": null,
"snoozedUntil": null,
"updatedAt": "2026-09-17T09:00:00.000Z"
},
{
"accounts": [
{
"avatar": null,
"createdAt": "2026-09-17T09:00:00.000Z",
"deepLinks": {
"android": "https://x.com/somsak_runs",
"ios": "https://x.com/somsak_runs",
"web": "https://x.com/somsak_runs"
},
"displayName": null,
"fetchIntervalS": 10800,
"fetchTier": "agent",
"handle": "somsak_runs",
"id": "acc_01j9dfpvstm7aq628gwwc9xkq3",
"lastSuccessAt": null,
"nextFetchAt": null,
"personId": "per_01j9rwtm99tsb5zjfh16k89915",
"platform": "x",
"platformUserId": null,
"profileUrl": "https://x.com/somsak_runs",
"status": "pending",
"statusDetailKey": null
}
],
"avatar": null,
"circleIds": [
"cir_01j9ebw22bbvzap1dk44j2y9eh"
],
"closeness": 2,
"createdAt": "2026-09-17T09:00:00.000Z",
"deletedAt": null,
"displayName": "Somsak",
"id": "per_01j9rwtm99tsb5zjfh16k89915",
"kind": "friend",
"lastVisitedAt": null,
"latestMomentAt": null,
"notes": null,
"relationLabel": null,
"snoozedUntil": null,
"updatedAt": "2026-09-17T09:00:00.000Z"
},
{
"accounts": [
{
"avatar": null,
"createdAt": "2026-09-17T09:00:00.000Z",
"deepLinks": {
"android": "https://truthsocial.com/@realexample",
"ios": "https://truthsocial.com/@realexample",
"web": "https://truthsocial.com/@realexample"
},
"displayName": null,
"fetchIntervalS": 3600,
"fetchTier": "server",
"handle": "realexample",
"id": "acc_01j93fce9xpx1fxafb7vaej1he",
"lastSuccessAt": "2026-10-17T08:00:00.000Z",
"nextFetchAt": null,
"personId": "per_01j954try4bd0jk4pfmxk2z1bd",
"platform": "truthsocial",
"platformUserId": null,
"profileUrl": "https://truthsocial.com/@realexample",
"status": "ok",
"statusDetailKey": null
}
],
"avatar": null,
"circleIds": [],
"closeness": 3,
"createdAt": "2026-09-17T09:00:00.000Z",
"deletedAt": null,
"displayName": "Example News",
"id": "per_01j954try4bd0jk4pfmxk2z1bd",
"kind": "creator",
"lastVisitedAt": null,
"latestMomentAt": "2026-10-16T03:00:00.000Z",
"notes": null,
"relationLabel": null,
"snoozedUntil": null,
"updatedAt": "2026-09-17T09:00:00.000Z"
},
{
"accounts": [
{
"avatar": null,
"createdAt": "2026-09-17T09:00:00.000Z",
"deepLinks": {
"android": "https://x.com/jack",
"ios": "https://x.com/jack",
"web": "https://x.com/jack"
},
"displayName": null,
"fetchIntervalS": 10800,
"fetchTier": "agent",
"handle": "jack",
"id": "acc_01j9yyff89w3w7eq8sec0nx68n",
"lastSuccessAt": "2026-10-13T09:00:00.000Z",
"nextFetchAt": null,
"personId": "per_01j9h1hs76zr3a67my92z862ww",
"platform": "x",
"platformUserId": null,
"profileUrl": "https://x.com/jack",
"status": "stale",
"statusDetailKey": null
}
],
"avatar": null,
"circleIds": [],
"closeness": 3,
"createdAt": "2026-09-17T09:00:00.000Z",
"deletedAt": null,
"displayName": "Jack",
"id": "per_01j9h1hs76zr3a67my92z862ww",
"kind": "creator",
"lastVisitedAt": null,
"latestMomentAt": null,
"notes": null,
"relationLabel": null,
"snoozedUntil": null,
"updatedAt": "2026-09-17T09:00:00.000Z"
}
],
"nextCursor": null
}