REST API / Views
citation_domains
View
All-time; not windowable (no day field). Visible citations by domain, with distinct answer, prompt and URL counts, engine split and separate observed versus synthetic source candidate counts. Synthetic search never enters retrieval or citation-rate denominators. Ownership records whether any stored citation identified the domain as own or competitor. For windowed reach use citation_facts (filter run_at); for dashboard-identical headline numbers, anchored windows and deltas, use read report_sources.
- Max rows per query
- 100
- Default order
- cited desc
- Required filter
- one of project_id
- Max offset
- 2000
- Cursor paging
- by id
Filter project_id and day where available. For dashboard-identical headline numbers, anchored windows and deltas, use read report_*.
Fields
| Field | Type | Description | Filter | Sort |
|---|---|---|---|---|
id | string | Stable identifier for this aggregate row. | – | ✓ |
project_id indexed | string | Project ID from projects. | ✓ | – |
domain | string | Stored citation domain. | ✓ | ✓ |
is_own | boolean | Whether any citation marks this as the project brand domain. | ✓ | ✓ |
is_competitor | boolean | Whether any citation marks this as a competitor domain. | ✓ | ✓ |
cited | integer | Visible citation events. | ✓ | ✓ |
answers | integer | Distinct answer runs citing the domain. | ✓ | ✓ |
urls | integer | Distinct cited URLs. | ✓ | ✓ |
prompts | integer | Distinct prompts citing this domain. | ✓ | ✓ |
engines | string[] | Engines citing this domain. | ✓ | – |
engine_observed_considered | integer | Uncited engine/provider-observed source events for this domain. | ✓ | ✓ |
synthetic_search | integer | Synthetic search candidate events; not engine retrieval. | ✓ | ✓ |
citation_ratenullable | number | Visible citation events / (visible citations + observed uncited sources), rounded percent. | ✓ | ✓ |
last_seen_at | datetime | Most recent answer time citing the domain. | ✓ | ✓ |
Examples
Example
SELECT id, project_id, domain, is_own, is_competitor
FROM citation_domains
WHERE project_id = $1
ORDER BY cited DESC
LIMIT 25Calling it
MCP
Tool call
query({"sql":"SELECT id, project_id, domain, is_own, is_competitor FROM citation_domains WHERE project_id = $1 ORDER BY cited DESC LIMIT 25","params":["<value 1>"]})REST
curl
curl -X POST "https://app.sensorhub.ai/api/v1/query" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
--data-binary @- <<'JSON'
{
"sql": "SELECT id, project_id, domain, is_own, is_competitor FROM citation_domains WHERE project_id = $1 ORDER BY cited DESC LIMIT 25",
"params": [
"<value 1>"
]
}
JSONRow JSON Schema
json
{
"type": "object",
"description": "All-time; not windowable (no day field). Visible citations by domain, with distinct answer, prompt and URL counts, engine split and separate observed versus synthetic source candidate counts. Synthetic search never enters retrieval or citation-rate denominators. Ownership records whether any stored citation identified the domain as own or competitor. For windowed reach use citation_facts (filter run_at); for dashboard-identical headline numbers, anchored windows and deltas, use read report_sources.",
"properties": {
"id": {
"type": "string",
"description": "Stable identifier for this aggregate row.",
"x-sensorhub-indexed": false,
"x-sensorhub-searchable": false,
"x-sensorhub-aggregatable": true,
"x-sensorhub-filterable": false,
"x-sensorhub-sortable": true
},
"project_id": {
"type": "string",
"description": "Project ID from projects.",
"x-sensorhub-indexed": true,
"x-sensorhub-searchable": false,
"x-sensorhub-aggregatable": true,
"x-sensorhub-filterable": true,
"x-sensorhub-sortable": false
},
"domain": {
"type": "string",
"description": "Stored citation domain.",
"x-sensorhub-indexed": false,
"x-sensorhub-searchable": false,
"x-sensorhub-aggregatable": true,
"x-sensorhub-filterable": true,
"x-sensorhub-sortable": true
},
"is_own": {
"type": "boolean",
"description": "Whether any citation marks this as the project brand domain.",
"x-sensorhub-indexed": false,
"x-sensorhub-searchable": false,
"x-sensorhub-aggregatable": true,
"x-sensorhub-filterable": true,
"x-sensorhub-sortable": true
},
"is_competitor": {
"type": "boolean",
"description": "Whether any citation marks this as a competitor domain.",
"x-sensorhub-indexed": false,
"x-sensorhub-searchable": false,
"x-sensorhub-aggregatable": true,
"x-sensorhub-filterable": true,
"x-sensorhub-sortable": true
},
"cited": {
"type": "integer",
"description": "Visible citation events.",
"x-sensorhub-indexed": false,
"x-sensorhub-searchable": false,
"x-sensorhub-aggregatable": true,
"x-sensorhub-filterable": true,
"x-sensorhub-sortable": true
},
"answers": {
"type": "integer",
"description": "Distinct answer runs citing the domain.",
"x-sensorhub-indexed": false,
"x-sensorhub-searchable": false,
"x-sensorhub-aggregatable": true,
"x-sensorhub-filterable": true,
"x-sensorhub-sortable": true
},
"urls": {
"type": "integer",
"description": "Distinct cited URLs.",
"x-sensorhub-indexed": false,
"x-sensorhub-searchable": false,
"x-sensorhub-aggregatable": true,
"x-sensorhub-filterable": true,
"x-sensorhub-sortable": true
},
"prompts": {
"type": "integer",
"description": "Distinct prompts citing this domain.",
"x-sensorhub-indexed": false,
"x-sensorhub-searchable": false,
"x-sensorhub-aggregatable": true,
"x-sensorhub-filterable": true,
"x-sensorhub-sortable": true
},
"engines": {
"type": "array",
"description": "Engines citing this domain.",
"items": {
"type": "string"
},
"x-sensorhub-indexed": false,
"x-sensorhub-searchable": false,
"x-sensorhub-aggregatable": false,
"x-sensorhub-filterable": true,
"x-sensorhub-sortable": false
},
"engine_observed_considered": {
"type": "integer",
"description": "Uncited engine/provider-observed source events for this domain.",
"x-sensorhub-indexed": false,
"x-sensorhub-searchable": false,
"x-sensorhub-aggregatable": true,
"x-sensorhub-filterable": true,
"x-sensorhub-sortable": true
},
"synthetic_search": {
"type": "integer",
"description": "Synthetic search candidate events; not engine retrieval.",
"x-sensorhub-indexed": false,
"x-sensorhub-searchable": false,
"x-sensorhub-aggregatable": true,
"x-sensorhub-filterable": true,
"x-sensorhub-sortable": true
},
"citation_rate": {
"type": [
"number",
"null"
],
"description": "Visible citation events / (visible citations + observed uncited sources), rounded percent.",
"x-sensorhub-indexed": false,
"x-sensorhub-searchable": false,
"x-sensorhub-aggregatable": true,
"x-sensorhub-filterable": true,
"x-sensorhub-sortable": true
},
"last_seen_at": {
"type": "string",
"description": "Most recent answer time citing the domain.",
"format": "date-time",
"x-sensorhub-indexed": false,
"x-sensorhub-searchable": false,
"x-sensorhub-aggregatable": true,
"x-sensorhub-filterable": true,
"x-sensorhub-sortable": true
}
},
"additionalProperties": false
}