Update a keyword
Mutes or unmutes the keyword, or changes its kind, platforms, classifier context, matching rules or monthly mention cap. Each rule field is optional and an empty list clears it. A null cap removes the cap, and a cap above this month's count resumes a capped keyword right away. New rules apply to mentions from the next poll on. Stored mentions stay as they are.
Authorization
bearerAuth An API key from POST /v1/api-keys. Keys start with ref_.
In: header
Path Parameters
The keyword's id (kw_...).
1 <= lengthRequest Body
application/json
Fields you leave out stay as they are.
Response Body
application/json
application/json
application/json
application/json
curl -X PATCH "https://example.com/v1/keywords/kw_abc123" \ -H "Content-Type: application/json" \ -d '{}'{ "id": "string", "term": "string", "kind": "brand", "muted": true, "pausedForBalance": true, "pausedForNoise": true, "pausedForCap": true, "cap": { "mentions": 1, "welcome": true, "own": 0 }, "group": { "id": "string", "name": "string", "externalId": "string", "isDefault": true }, "platforms": [ "bluesky" ], "reviewSources": [ { "platform": "appstore", "id": "string", "url": "string", "countries": [ "string" ], "language": "string", "connectedAt": "string" } ], "context": "string", "matching": { "requiredTerms": [ "string" ], "requiredMode": "any", "excludedTerms": [ "string" ], "excludedAuthors": [ "string" ], "caseSensitive": true }, "stats": { "mentions": 0, "relevant": 0, "last7d": 0, "thisMonth": 0, "lastMentionAt": "string", "feedback": { "relevant": 0, "notRelevant": 0 }, "noise": { "scored": 0, "relevant": 0, "noisy": true }, "health": "healthy", "cost": { "keywordDays": 0, "keywordCents": 0, "billableMentions": 0, "mentionCents": 0, "totalCents": 0 } }, "polling": [ { "platform": "bluesky", "lastPolledAt": "string", "emptyPolls": 0 } ], "createdAt": "string"}List keywords
Returns the workspace's keywords with their match counts and polling status. With no parameters you get all keywords, latest first. `q` searches the term and context. `kind`, `status` and `platform` filter the list, `sort` orders it, and `limit` and `offset` page through it. `total` is the number of matching keywords before paging.
Export mentions as CSV
Returns as CSV the mentions GET /v1/mentions lists for the same filters. Rows are ordered by match time, latest first, which is the order they reached your feed and can differ from the post date. The columns are id, published_at, platform, keyword, author, author_url, author_followers, relevance, sentiment, intents (separated by |), language, confidence, status, relevant, delivered, url, links (separated by |), text (the first 1,000 characters), group, group_external_id, rating and app_id (reviews only), and title and image_url (on platforms that have them). The file holds at most 10,000 rows, and the X-Mentions-Truncated header tells you when rows were cut. Each workspace can export 6 times a minute, and a 429 includes Retry-After.