SoftSolzSoftSolz
HomeAPI GuideAPI ReferenceWidget Tester
seo

Start a monthly report with your own model doing the explaining.

Queues the report: SoftSolz syncs Search Console, runs the detectors and builds recommendations, but writes no explanations, so no SoftSolz AI credits are spent. Poll GET /tasks/{task_id} until completed, then read GET /runs/{run_id} and write narratives with PUT /runs/{run_id}/narratives. 409 gsc_not_connected: connect Search Console in the dashboard. 409 run_exists: that month is already analysed, read it instead. 400 no_period_available: no complete month yet.

POSThttps://app.softsolz.uk/api/v1/services/seo/sites/{site_id}/runs

Recent Requests

Log in to see full request history
TimeStatusUser Agent
Make a request to see history.

Path Params

site_idstringrequired

Headers

Authorizationstringrequired

Bearer token: `Bearer sk_live_...` (or `sk_test_...` for sandbox). A login token will not work here.

Idempotency-Keystring

Optional idempotency key for safe retries.

Body Params

period_startstring

First day of the month to analyse. Defaults to the latest complete month.

Response

Response Body

runobjectA monthly report.
task_idstringBackground task to poll.

Request

import { SoftSolz } from '@softsolz/sdk';
const client = new SoftSolz({ apiKey: process.env.SOFTSOLZ_API_KEY });
const result = await client.seo.startAnalysisRun('<site_id>', {});
console.log(result);

Credentials

Sent as a Bearer token. Stored only in your browser.

Response · 202

{
"data": {
"run": {},
"task_id": "string"
}
}