Track a keyword
Start tracking a word or phrase. Matching, classification and delivery begin on the next poll. A funded workspace tracks up to 500 keywords; each costs $5 per month, deducted daily from the balance. `matching` narrows what the term matches (required and excluded terms, excluded authors, case) before a mention is stored, so a rejected post is never billed; `context` is a sentence the classifier reads for this keyword only.
API key minted via POST /v1/api-keys (format mk_live_...)
In: header
The word or phrase to track, matched case-insensitively as a phrase.
2 <= length <= 80brand: your own names. competitor: theirs. topic: the space. Drives share of voice and segments.
"brand""brand" | "competitor" | "topic"Platforms to track it on; omit or null for every platform.
1 <= itemsA sentence the classifier reads for this keyword only, on top of the company profile (at most 300 characters): what the term means here, what to ignore. "Arc is our browser; ignore the geometry word." Null clears it.
length <= 300Omitted fields are untouched; an empty list clears one.
Response Body
application/json
application/json
application/json
application/json
curl -X POST "https://api.mentio.dev/v1/keywords" \ -H "Content-Type: application/json" \ -d '{ "term": "string" }'{
"id": "string",
"term": "string",
"kind": "brand",
"muted": true,
"pausedForBalance": true,
"platforms": [
"bluesky"
],
"context": "string",
"matching": {
"requiredTerms": [
"string"
],
"requiredMode": "any",
"excludedTerms": [
"string"
],
"excludedAuthors": [
"string"
],
"caseSensitive": true
},
"stats": {
"mentions": 0,
"relevant": 0,
"last7d": 0,
"lastMentionAt": "string",
"feedback": {
"relevant": 0,
"notRelevant": 0
}
},
"polling": [
{
"platform": "bluesky",
"lastPolledAt": "string",
"emptyPolls": 0
}
],
"createdAt": "string"
}{
"error": {
"code": "unauthorized",
"message": "string",
"requestId": "string",
"retryAfterSeconds": 0
}
}{
"error": {
"code": "unauthorized",
"message": "string",
"requestId": "string",
"retryAfterSeconds": 0
}
}{
"error": {
"code": "unauthorized",
"message": "string",
"requestId": "string",
"retryAfterSeconds": 0
}
}