Skip to Content
Browse the Docs▾

Update a lead's labels

PATCH/api/v1/leads/{id}

Set vertical, archetype and tags on a lead. The only write on leads: the API can't create leads or change status, drafts or contacts.

curl -X PATCH -H "Authorization: Bearer $REVNU_API_TOKEN" \
  -H "content-type: application/json" \
  -d '{"vertical":"hpc","archetype":"operator","tags":["eu","gpu"]}' \
  https://revnu.com/api/v1/leads/sn7…

Body

Any of vertical, archetype (strings, at most 120 characters) and tags (up to 20 strings of at most 64 characters, deduplicated, order kept). null clears a field. Unknown fields are a 400, so a typo never silently does nothing.

Response

{ "lead": { id, domain, vertical, archetype, tags } }, the labels as stored. The response carries nothing a leads:read token would show; read the lead back for the rest. Status, drafts, contacts and research stay read-only; the agent and the dashboard own them. 404 for an unknown or another account's lead.

Frequently Asked Questions

Can leads:write create or import leads?

Revnu creates leads itself: send it a list as a message or a webhook and it researches them. leads:write sets these three labels and manages the block list.

Which scope does this need?

leads:write. A token without it gets 403 with requiredScope in the body. GET /me shows a token's scopes.

Does the agent read tags?

No. tags is yours: market and sub-market slugs, campaign names, whatever your own dashboard keys on. vertical and archetype are shown in the dashboard and used to segment the leads table.

Are responses cached?

No. Every response is Cache-Control: no-store, so what you read is current.