/v1/brands/{brand_id}/content-opportunities List content opportunities
Report-driven content ideas for the brand: prompts where the brand is absent from AI answers (missed_prompt) plus competitors cited in its place (competitor), each pre-classified to a content format and pre-filled with topic, keywords, and context.
Ranked with not-yet-covered opportunities first, then by impact. Bounded by limit (1-50, default 24); this list is not cursor-paginated. The summary block reports totals across the analyzed reports.
Path parameters
Brand UUID.
Query parameters
Number of opportunities to return (1-50, default 24).
default: 24
Header parameters
Responses
Aggregate counts for the opportunity set.
Show fields
Returned opportunities not yet covered by an existing brief.
Distinct competitors cited where the brand is absent.
Distinct prompts where the brand is absent from AI answers.
Opportunities returned in
data(bounded bylimit).Recent reports scanned to build these opportunities.
- objectstring
Always
content_opportunity_summary.
- objectstring
Example response
{
"data": [
{
"competitor": "Asana",
"content_context": {
"listSize": 7,
"listTheme": "project management tools for agencies"
},
"content_type": "ranked_list",
"has_existing_brief": false,
"id": "prompt:9a17c4f8-4e31-92fa-7d1e-3b5c8b2a9a17",
"kind": "missed_prompt",
"object": "content_opportunity",
"platforms_missed": [
"ChatGPT",
"Perplexity"
],
"reason": "You are absent on ChatGPT, Perplexity; Asana is cited instead.",
"target_keywords": [
"best project management tools for agencies"
],
"title": "best project management tools for agencies",
"topic": "What are the best project management tools for agencies?"
}
],
"object": "list",
"summary": {
"actionable": 21,
"competitors": 6,
"missed_prompts": 42,
"object": "content_opportunity_summary",
"opportunities": 24,
"reports_analyzed": 10
}
}Show fields
Stable machine-readable error code from the catalog.
Human-readable description suitable for logging.
- detailsobject
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
- request_idstring
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "validation_error",
"message": "Request validation failed"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}Show fields
Stable machine-readable error code from the catalog.
Human-readable description suitable for logging.
- detailsobject
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
- request_idstring
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "unauthorized",
"message": "Missing or invalid credentials"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}Show fields
Stable machine-readable error code from the catalog.
Human-readable description suitable for logging.
- detailsobject
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
- request_idstring
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "forbidden",
"message": "You do not have permission to access this resource"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}Show fields
Stable machine-readable error code from the catalog.
Human-readable description suitable for logging.
- detailsobject
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
- request_idstring
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "not_found",
"message": "Resource not found"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}Show fields
Stable machine-readable error code from the catalog.
Human-readable description suitable for logging.
- detailsobject
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
- request_idstring
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "conflict",
"message": "Resource conflict"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}Show fields
Stable machine-readable error code from the catalog.
Human-readable description suitable for logging.
- detailsobject
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
- request_idstring
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "rate_limit_exceeded",
"message": "Per-minute rate limit exceeded"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}Show fields
Stable machine-readable error code from the catalog.
Human-readable description suitable for logging.
- detailsobject
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
- request_idstring
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "internal_error",
"message": "An unexpected error occurred"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}Show fields
Stable machine-readable error code from the catalog.
Human-readable description suitable for logging.
- detailsobject
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
- request_idstring
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "service_unavailable",
"message": "Service temporarily unavailable, please retry"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}