Digitalyser.io for developers

Competitors tracked for this project

Competitors attached to the project.

Competitors attached to the project. The view parameter selects which population, and they are not interchangeable:

  • benchmark (default) — the shortlist arbitrated by SERP recurrence. The only comparable list, and the one the overview radar is built on.
  • market-map — those accepted by the latest discovery run, typed.
  • inspiration — the editorial pool.
  • pool — the historical population across all runs: accepted, editorial sources and transient failures. A sorting surface, not an answer to « who are my competitors ».

Each entry carries assetFreshness, the state of the crawl assets used for editorial inspiration (expiry around a day). This has no relation to the audit freshness (30-day window) behind competitorPosture in the overview: an entry marked stale here can perfectly well belong to a High Confidence cohort there.

GET/v1/projects/{projectId}/audits/competitors

Authorization

agent-token
AuthorizationBearer <token>

An agent project token. Obtained by OAuth consent for an AI client, or derived per project from an organisation service key for a machine. A scoped API key authenticates the transport but opens no capability: a capability takes its project from the credential.

In: header

Path Parameters

projectId*string

The project this call is about. A routing hint, not an authorisation. The project comes from the credential; this segment exists so multi-project code stays uniform. If it names a project outside the token, the call is refused with routing_hint_mismatch — it is never used to widen access.

Formatuuid

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://app.digitalyser.io/api/v1/projects/550e8400-e29b-41d4-a716-446655440000/audits/competitors" \  -H "Authorization: Bearer <token>"
[  {    "id": "5b8d1c4e-0a72-4f33-9e61-7d2c8a95b104",    "displayName": "Globex Joinery",    "canonicalDomain": "globex.example",    "sourceUrl": "https://search.example/?q=made-to-measure+joinery",    "originType": "audit_detected",    "inspirationEligibility": "ready",    "qualificationState": "accepted",    "benchmarkAuthorityPosture": "authoritative",    "status": "completed",    "reasonCode": "same_service_same_area",    "verdictReason": "Sells made-to-measure joinery to the same households within the same metropolitan area.",    "arbitration": "confirmed",    "competitorType": "direct",    "benchmarkRank": 2,    "distinctTerms": 17,    "proximityScore": 78,    "globalScore": 71,    "lastAnalyzedAt": "2026-09-19T04:31:52.000Z",    "assetFreshness": {      "status": "fresh",      "totalAssetCount": 12,      "usableAssetCount": 9,      "lastPreparedAt": "2026-09-23T22:04:09.000Z",      "expiresAt": "2026-09-24T22:04:09.000Z"    },    "createdAt": "2026-08-30T10:22:41.000Z",    "updatedAt": "2026-09-19T04:31:52.000Z"  }]

Generated from the capability registry — API version 1, 18 paths, from 4815355 (2026-10-12).

Was this page helpful?