Get one signal
A signal plus its current classification and score breakdown when those exist. Answers `404 NOT_FOUND` when it is not visible.
A signal plus its current classification and score breakdown when those exist. Answers 404 NOT_FOUND when it is not visible.
Authorization
bearerAuth A Supabase Auth user access token for the signed-in SignalDock user, sent as Authorization: Bearer <token>. Paste one from a signed-in session, or obtain one through the oauth2 scheme; the API accepts either.
In: header
Path Parameters
Id of the signal to address.
uuidResponse Body
application/json
application/problem+json
application/problem+json
application/problem+json
curl -X GET "https://example.com/signals/11111111-1111-4111-8111-111111111111"{ "signal": { "id": "11111111-1111-4111-8111-111111111111", "organization_id": "33333333-3333-4333-8333-333333333333", "source_id": "44444444-4444-4444-8444-444444444444", "raw_publication_id": "e40d56d2-b3c3-4857-9d78-3ef0a8bd2173", "external_id": "oep:12345", "status": "ingested", "signal_type": "omgevingsvergunning", "title": "Omgevingsvergunning evenementenplein", "summary": "string", "published_at": "2026-09-15T12:00:00.000Z", "effective_start": "2019-08-24T14:15:22Z", "effective_end": "2019-08-24T14:15:22Z", "source_url": "http://example.com", "project_id": "405d8375-3514-403b-8c43-83ae74cfe0e9", "current_score": 72, "dedupe_key": "string", "created_at": "2026-09-15T12:00:00.000Z", "updated_at": "2026-09-15T12:00:00.000Z" }, "classification": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "signal_id": "2ed0fe1b-e60f-4814-9f33-d8d651fae2c8", "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6", "version": 1, "model": "string", "prompt_key": "string", "prompt_version": "string", "prompt_hash": "string", "output": null, "confidence": 0, "commercial_relevance": true, "relevance_reasons": [ "string" ], "project_category": "string", "project_stage": "string", "estimated_size": 0, "is_current": true, "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z" }, "score": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "signal_id": "2ed0fe1b-e60f-4814-9f33-d8d651fae2c8", "scoring_config_id": "e42f6b32-fb8c-4f34-a9de-635ff3e338a6", "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6", "total": 42, "is_current": true, "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z" }, "components": [ { "dimension": "commercial_relevance", "rule_key": "string", "origin": "rule", "raw_value": 0, "weight": 0, "points": 42, "reason": "string" } ], "breakdown": { "total": 42, "decision": "ignore", "components": [ { "dimension": "commercial_relevance", "rule_key": "string", "origin": "rule", "raw_value": 0, "weight": 0, "points": 42, "reason": "string" } ] }}List signals GET
Signals in an organization, newest first. Filter by `status`, `projectId`, or a title search. Row-level security hides other tenants.
Reprocess a signal POST
Starts `processSignalWorkflow` from `fromStage` (or classify). Requires a write role. The API owns workflow start; this contract only describes the request.