Keywords

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.

POST
/v1/keywords
AuthorizationBearer <token>

API key minted via POST /v1/api-keys (format mk_live_...)

In: header

termstring

The word or phrase to track, matched case-insensitively as a phrase.

Length2 <= length <= 80
kind?string

brand: your own names. competitor: theirs. topic: the space. Drives share of voice and segments.

Default"brand"
Value in"brand" | "competitor" | "topic"
platforms?|null

Platforms to track it on; omit or null for every platform.

Items1 <= items
context?string|null

A 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.

Lengthlength <= 300
matching?

Omitted 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
  }
}