API reference / People reads
Read a person's posts (live)
Written and maintained by The ProspectAPIs team
GET/v1/people/posts
GET /v1/people/posts is the ProspectAPIs operation getPeoplePosts, in the People reads group of the REST API. Read a person's recent public posts. Fetched fresh at request time, not from a stored cache. $0.012 per live read. Page with cursor or start. Billed per call once the reads are live; while they are not yet on sale the call is free (GET /pricing reports people_reads.available). Cost: $0.012 per live read. Send your API key as a Bearer token in the Authorization header.
The quickstart shows this call in context, next to the first requests most integrations make.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| person_ref required | query | string | The person reference from a profile or search result. |
| start | query | integer | Zero-based offset. |
| count | query | integer | Posts per page, 1 to 50. |
| cursor | query | string | Opaque cursor from the previous page. |
An unknown query parameter is refused with a 400 rather than ignored, so a typo never widens a search you pay for.
Responses
| Status | Meaning |
|---|---|
| 200 | The person's recent posts and a page cursor, read fresh. |
| 400 | The request was invalid (e.g. a bad filter or input); nothing was charged. |
| 401 | The API key is missing or invalid. |
| 402 | Out of credits. The body carries top_up_url; nothing was charged. |
| 429 | Too many requests; retry after the window. |
| 503 | This read is temporarily unavailable. Nothing was charged. |
Every error answers with the same JSON body, an error string and sometimes a code; the errors page lists each status and when it happens. A per-key 429 carries Retry-After; see rate limits.
200 response fields
The person's recent posts and a page cursor, read fresh. The body is a PeopleReadResult.
| Field | Type | Description |
|---|---|---|
| data required | object | The read result. For search, posts, engagers and followers this is { items, page }; for a profile it is the profile object. |
| coverage required | object | How complete the source was. |
| coverage.filled | integer | |
| coverage.of | integer |
| Header | Meaning |
|---|---|
| RateLimit-Limit | Requests this API key may make per minute. |
| RateLimit-Remaining | Requests left in the current one-minute window. |
| RateLimit-Reset | Seconds until the current window resets. |
Code samples
Each sample sends the same request. Set PROSPECTAPIS_KEY in your environment first. Values come from the spec's examples; replace them with your own.
curl -G https://api.prospectapis.com/v1/people/posts \
-H "Authorization: Bearer $PROSPECTAPIS_KEY" \
--data-urlencode "person_ref=person ref"const params = new URLSearchParams({ person_ref: "person ref" });
const res = await fetch(`https://api.prospectapis.com/v1/people/posts?${params}`, {
headers: { Authorization: `Bearer ${process.env.PROSPECTAPIS_KEY}` },
});
if (!res.ok) throw new Error(`${res.status}: ${(await res.json().catch(() => ({}))).error ?? res.statusText}`);
const data = await res.json();
console.log(data);import os, requests
res = requests.get(
"https://api.prospectapis.com/v1/people/posts",
headers={"Authorization": f"Bearer {os.environ['PROSPECTAPIS_KEY']}"},
params={"person_ref": "person ref"},
timeout=30,
)
res.raise_for_status()
data = res.json()
print(data)Billing
Billing reserves before it serves: the call holds what it may cost, serves at most what that hold covers, and refunds the rest when the response closes. Any non-2xx answer refunds the whole hold, so a failed call costs nothing. The response reports your balance in X-Credits-Remaining.
Related
Previous operation: Search people (live). Next operation: Read a post's engagers (live). Every operation, grouped by area, is on the API reference index.
Create a free account to get a key, then run the samples above with your own values.
Was this page helpful?