Keywords API
Manage SEO keywords, track volume and difficulty, and link to content.
3 min read
Keywords API
Manage SEO keywords, track search volume and difficulty, and link keywords to content entities.
List Keywords
GET /api/v1/keywords?search={term}&cluster={clusterId}&limit=50&offset=0
Query Parameters
searchstring
Filter keywords by a search term (partial match).
clusterstring
Filter keywords by topical cluster ID.
limitnumber
Maximum number of results to return.
offsetnumber
Pagination offset for skipping results.
Response
dataobject[]
Array of keyword objects.
data[].idstring
Unique identifier for the keyword.
data[].keywordstring
The keyword phrase.
data[].volumenumber
Monthly search volume estimate.
data[].difficultynumber
Keyword difficulty score (0-100).
data[].clusterIdstring
ID of the topical cluster this keyword belongs to, or `null`.
data[].entityIdstring
ID of the content entity targeting this keyword, or `null`.
totalnumber
Total count of keywords matching the query (before pagination).
hasMoreboolean
Whether more results exist beyond the current page.
Create Keyword
POST /api/v1/keywords
Request Body
keywordstringrequired
The keyword phrase.
volumenumber
Monthly search volume estimate.
difficultynumber
Keyword difficulty score (0-100).
clusterIdstring
ID of the topical cluster to assign this keyword to.
entityIdstring
ID of the content entity targeting this keyword.
Bulk Import Keywords
POST /api/v1/keywords/bulk
Import multiple keywords in a single request. Duplicate keywords (by exact phrase match) are skipped.
Request Body
keywordsobject[]required
Array of keyword objects. Each must include at least a `keyword` field. Optional fields: `volume`, `difficulty`, `clusterId`, `entityId`.
Response
creatednumber
Number of keywords successfully created.
duplicatesnumber
Number of keywords skipped because they already exist.
errorsnumber
Number of keywords that failed validation.
Update Keyword
PATCH /api/v1/keywords/:id
Request Body
volumenumber
Updated monthly search volume.
difficultynumber
Updated keyword difficulty score (0-100).
clusterIdstring
ID of the topical cluster to assign this keyword to. Pass `null` to unassign.
entityIdstring
ID of the content entity targeting this keyword. Pass `null` to unlink.
Delete Keyword
DELETE /api/v1/keywords/:id
Warning
This permanently deletes the keyword. This action cannot be undone.
Was this helpful?
