What to write next, and why.
Topics with real search demand that the site does not cover, or covers only partly. coverage_score is measured by checking whether the words of each search actually appear in the page title, headings and text; it is a floor, not a ceiling, when coverage_partial is true. Read this, pick a topic_id, then POST /sites/{site_id}/briefs to plan the page. Spends no SoftSolz AI credits.
GET
https://app.softsolz.uk/api/v1/services/seo/sites/{site_id}/content-gapsRecent Requests
Log in to see full request historyTimeStatusUser Agent
Make a request to see history.
Path Params
site_idstringrequiredHeaders
AuthorizationstringrequiredBearer token: `Bearer sk_live_...` (or `sk_test_...` for sandbox). A login token will not work here.
Response
Response Body
revisioninteger | nullWhich build of the topic map this used.period_startstring | nullThe month measured.thresholdsobjectThe coverage thresholds applied.gapsarray of objectsBiggest demand first.Request
import { SoftSolz } from '@softsolz/sdk';
const client = new SoftSolz({ apiKey: process.env.SOFTSOLZ_API_KEY });
const result = await client.seo.listContentGaps('<site_id>', {});console.log(result);Credentials
Sent as a Bearer token. Stored only in your browser.
Response · 200
{ "data": { "revision": 0, "period_start": "string", "thresholds": {}, "gaps": [] }}