API reference · Discovery

Find creators to work with

GET /v1/discover/creators

Search the network's creator marketplace for people a brand could partner with. Instagram needs a connection made through Facebook. IMPORTANT: until Meta grants the app Advanced Access, the results are SIMULATED creators for testing, and every row carries `sample: true` to say so. Acting on a sample means pitching a partnership to somebody who does not exist, so check it before you use a result.

Request

Authenticate with a bearer API key. Agents calling over MCP authorise with OAuth instead and never handle the key.

curl -X GET https://api.postlake.dev/v1/discover/creators \
  -H "Authorization: Bearer $POSTLAKE_API_KEY"

Parameters

FieldTypeRequiredWhat it is
accountstringYesQuery string. Which connected account to search from, so we know which network.
qstringNoQuery string. Free-text search.
countriesstringNoQuery string. Comma-separated country codes.
interestsstringNoQuery string. Comma-separated content categories.
limitintegerNoQuery string.
cursorstringNoQuery string.

Response

Creators (200).

FieldTypeRequiredWhat it is
itemsarray of objectYes
cursorstringYes
platformobjectYes

Example

{
  "items": [
    {
      "id": "…",
      "handle": "…",
      "displayName": "…",
      "avatarUrl": "…",
      "followers": "…",
      "bio": "…",
      "categories": "…",
      "sample": "…"
    }
  ],
  "cursor": "…",
  "platform": "…"
}

Paging

Pass limit (1 to 100, default 50) and the cursor returned by the previous page. A response with a null cursor is the last page. Every list endpoint pages the same way, so one helper covers all of them.

Limits

Reads are limited to 600 requests a minute per account. Every response carries X-RateLimit-Remaining and X-RateLimit-Reset, and a 429 includes Retry-After so a client can back off without guessing. Reads of network data (comments, followers, conversations) are metered in credits; reads of your own PostLake state are not.

Calling this from an agent

This operation is part of the REST surface. Agents working over the hosted MCP server reach the same product through tools instead, and authorise with OAuth so your API key is never pasted into a chat. See the MCP server.

Errors

Every failure uses one shape: a stable type, a granular code, the field at fault in param, and a plain-language fix. An agent can act on it without a person reading the message. See Errors and retries.

Retries are safe. Send the same Idempotency-Key and a call that already succeeded returns its original result rather than repeating it.

Common questions

How often can I call this?

Reads are rate limited per account and every response carries X-RateLimit-Remaining and X-RateLimit-Reset. On a 429 the Retry-After header tells you how long to wait.

What happens when it fails?

You get one error shape: a stable type, a granular code you can branch on, the offending field in param, and a fix written so an agent can correct itself rather than stop. Full list on Errors and retries.

Related