API pipeline: Receive a free 7-day starter radar for your project and watch its matches

Index: API pipelines — index

Goal: a person with a project page on Cabi.Chat gets a free 7-day radar for that project and watches its matches.

What the person gets

Who calls it

The project's owner: with their own session or PAT, or through a Cabi.Chat oracle they gave setup access to. One starter radar per person.

Steps

1. Open. The body is optional: without it the keywords come from the project's rubrics or title, and its city.

POST /v0/my/projects/470000000000000020/starter-radar
{"keywords": [["dentist", "dental clinic"]], "not_groups": ["vacancy"], "city": "bali"}
→ {"campaign": "470000000000000021", "matches_workspace": "470000000000000022",
   "links": {"trial": {"nonce": "…", "token": "…", "url": "https://cabi.chat/l/…"},
             "view":  {"nonce": "…", "token": "…", "url": "https://cabi.chat/l/…"}},
   "trial_ends_at": "2026-10-22T…Z", "status": "Active", "is_active": true,
   "keyword_groups": [["dentist", "dental clinic"], ["bali"]], "not_groups": [["vacancy"]], "created": true}

2. Read matches.

GET /v0/my/workspaces/470000000000000022?contained_limit=200
→ {"contained": [{"card_type": "post", "nonce": "…", "snippet": "…", "source_url": "https://t.me/example_group/123", …}], …}

3. Adjust during the trial. PATCH /v0/my/campaigns/470000000000000021 {"keyword_groups": [[…]], "not_groups": [[…]]}, and POST …/start / …/stop. Other fields are set by Cabi.Chat.

Rules

API surface

Endpoint Purpose FE AI / oracle
POST /v0/my/projects/{nonce}/starter-radar Open (or return) the project's starter radar no the owner's own AI, or a Cabi.Chat oracle with setup access
GET /v0/my/workspaces/{matches_workspace} Read matches yes yes
PATCH /v0/my/campaigns/{nonce} Keywords and excludes during the trial yes yes
POST /v0/my/campaigns/{nonce}/start, /stop Run / pause during the trial yes yes
GET /v0/linked/{token}?project= Claim a link on another project of yours yes user's own AI

Mentioned