SoftSolzSoftSolz
HomeAPI GuideAPI ReferenceWidget Tester

Turn an opportunity into a task in the Tasks service.

Creates one task holding the title, the page or question and the score, and records it on the opportunity as task_id. Calling it again returns the task already made (200) instead of a second one. Requires the Tasks service (402 service_not_active); the member behind the key or connected app must hold service.tasks.create (403 otherwise) and the task is assigned to them. Spends no SoftSolz AI credits.

POSThttps://app.softsolz.uk/api/v1/services/seo/sites/{site_id}/opportunities/{opportunity_id}/task

Recent Requests

Kept only in this browser
TimeStatusTook
Send a request with Try it to see it here.

Path Params

site_idstringrequired
opportunity_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.

Response

Response Body

task_idstringThe task in the Tasks service.
linkstringWhere the task opens in the dashboard.
existingbooleanTrue when the task had already been made.
opportunityobjectOne piece of work worth doing, scored and tracked across months. This is the unit the growth board is built from.

Request

curl --request POST \
--url https://app.softsolz.uk/api/v1/services/seo/sites/{site_id}/opportunities/{opportunity_id}/task \
--header 'Authorization: Bearer sk_live_your_key'

Credentials

Sent as a Bearer token and used in the samples above and in Try it. Kept only in this browser tab until you close it. Use an sk_test_ key to stay in your sandbox.

Response · 201

{
"data": {
"task_id": "4182",
"link": "/tasks/4182",
"existing": false,
"opportunity": {
"id": "3f2b9c44-8f4e-4d0a-9c1b-2a7d6e5f1a23",
"site_id": "3f2b9c44-8f4e-4d0a-9c1b-2a7d6e5f1a23",
"kind": "fix_snippet",
"kind_label": "Rewrite the title and description",
"family": "content",
"pillar": "seo",
"action": "refresh",
"is_win": false,
"entity_type": "page",
"question_id": null,
"question": null,
"subject_key": null,
"task_id": null,
"page_id": 1335,
"query_id": 812,
"topic_id": 41,
"title": "Rewrite the title and description on /pricing",
"score": 59.28,
"score_components": {
"gap": {
"value": 1,
"weight": 0.3
},
"demand": {
"value": 0.62,
"weight": 0.22
}
},
"opportunity_clicks": 29,
"est_value": null,
"effort": "low",
"confidence": 0.666,
"status": "open",
"first_seen_on": "2026-05-01",
"last_seen_on": "2026-08-01",
"occurrence_count": 4,
"baseline_json": {
"clicks": 4,
"impressions": 900,
"position": 14.2
},
"evidence_json": {
"finding_count": 2
},
"recommendation_id": null,
"created_at": "2026-09-01T09:00:00.000Z",
"updated_at": "2026-09-01T09:00:00.000Z"
}
}
}