curl -X POST https://api.tryprofound.com/v2/reports/sentiment \
-H "X-API-Key: <your-api-key>" \
-H "Content-Type: application/json" \
-d '{
"category_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
"asset": "Profound",
"start_date": "2026-06-09",
"end_date": "2026-06-15"
}'
{
"info": {
"total_results": 1,
"count": 1,
"next_cursor": null,
"asset": "Profound",
"models": ["ChatGPT", "Google Gemini", "Perplexity", "Claude", "..."],
"metrics": ["positive_sentiment", "negative_sentiment"],
"start_date": "2026-06-09",
"end_date": "2026-06-15",
"filter": null
},
"data": [
{
"positive_sentiment": 79.1,
"negative_sentiment": 20.9
}
]
}
Informes v2
Sentimiento
POST
/
v2
/
reports
/
sentiment
curl -X POST https://api.tryprofound.com/v2/reports/sentiment \
-H "X-API-Key: <your-api-key>" \
-H "Content-Type: application/json" \
-d '{
"category_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
"asset": "Profound",
"start_date": "2026-06-09",
"end_date": "2026-06-15"
}'
{
"info": {
"total_results": 1,
"count": 1,
"next_cursor": null,
"asset": "Profound",
"models": ["ChatGPT", "Google Gemini", "Perplexity", "Claude", "..."],
"metrics": ["positive_sentiment", "negative_sentiment"],
"start_date": "2026-06-09",
"end_date": "2026-06-15",
"filter": null
},
"data": [
{
"positive_sentiment": 79.1,
"negative_sentiment": 20.9
}
]
}
Sentimiento por marca expresado en porcentajes, a partir de las respuestas de IA o de las páginas
que citan esas respuestas.
asset es obligatorio porque el sentimiento se calcula para una
marca a la vez.
source: "response"(predeterminado): sentimiento en las respuestas de IA. Las métricas sonpositive_sentiment,negative_sentimenty, de forma opcional,occurrence.source: "citation": una fila por página citada, conpositive_sentiment,negative_sentimentycitation_shareequilibrado por modelo. De forma predeterminada, ordena porcitation_share; establece explícitamentesort.fieldenpositive_sentimentpara ordenar por el sentimiento de la página.- Fechas de comparación: añade
comparison_start_dateycomparison_end_date. Las filas de respuestas incluyen las métricas de sentimiento anteriores. Las filas de citas incluyen elcitation_shareanterior de la página.
group_by entre topic,
region, model, prompt, persona, tag, theme, claim, run y
competitor, además de date. El sentimiento de citas es solo por página y rechaza
group_by; usa filtros para acotar el conjunto de páginas.
Ambas fuentes aceptan filtros de la capa de prompts como model, topic, region,
persona, prompt y tag, además de los filtros de nivel superior theme / claim. El
sentimiento de citas acepta además estos filtros de nivel superior:
citation_category:isoin. Los valores pueden ser categorías integradas (owned,competition,social,earned_media,earned_institutions,pr_wire,other) o un valor de categoría personalizada.page:contains_case_insensitivecon un valor no vacío. Busca en la URL normalizada de la página.
include_cited_websites: true solo se aplica al sentimiento de respuestas agrupado por
theme y/o claim.
El sentimiento de citas describe la página citada. Un filtro de modelo cambia qué
citas de modelos contribuyen a la elegibilidad de la página y a la cuota de citas; no
convierte el sentimiento de la página en una puntuación de sentimiento específica del modelo.
¿Es la primera vez que usas los informes v2? Consulta Filtros y conceptos para ver la estructura de solicitud compartida, el árbol de filtros, la agrupación y la paginación.
Variante de streaming (SSE) (mismo cuerpo, /stream)
Variante de streaming (SSE) (mismo cuerpo, /stream)
POST /v2/reports/sentiment/stream admite tanto el sentimiento de respuestas como el de
citas y devuelve Server-Sent Events:
un evento summary (el bloque info) y, a continuación, un evento result por fila.
limit/cursor se ignoran; de forma predeterminada devuelve todo. Pasa
max_results para limitarlo. Con source: "citation", cada result tiene la misma
estructura por página que devuelve en data el endpoint paginado.Response (text/event-stream)
event: summary
data: { ...the info block... }
event: result ← one per row, same shape as data[] above
data: {"theme": {"id": "a14e0c2d", "name": "Analytics"}, "rank": 1, "positive_sentiment": 95.4, "negative_sentiment": 4.6}
curl -X POST https://api.tryprofound.com/v2/reports/sentiment \
-H "X-API-Key: <your-api-key>" \
-H "Content-Type: application/json" \
-d '{
"category_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
"asset": "Profound",
"start_date": "2026-06-09",
"end_date": "2026-06-15"
}'
{
"info": {
"total_results": 1,
"count": 1,
"next_cursor": null,
"asset": "Profound",
"models": ["ChatGPT", "Google Gemini", "Perplexity", "Claude", "..."],
"metrics": ["positive_sentiment", "negative_sentiment"],
"start_date": "2026-06-09",
"end_date": "2026-06-15",
"filter": null
},
"data": [
{
"positive_sentiment": 79.1,
"negative_sentiment": 20.9
}
]
}
Ejemplo de páginas de citas
Esta solicitud devuelve las páginas propias que contienentryprofound.com, ordenadas por su
cuota de citas actual. Combina las hojas de la capa de citas con otros filtros dentro de un
and de nivel superior.
cURL
curl -X POST https://api.tryprofound.com/v2/reports/sentiment \
-H "X-API-Key: <your-api-key>" \
-H "Content-Type: application/json" \
-d '{
"category_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
"asset": "Profound",
"start_date": "2026-06-09",
"end_date": "2026-06-15",
"source": "citation",
"metrics": ["positive_sentiment", "negative_sentiment", "citation_share"],
"sort": {"field": "citation_share", "dir": "desc"},
"filter": {
"and": [
{"field": "citation_category", "op": "is", "value": "owned"},
{"field": "page", "op": "contains_case_insensitive", "value": "tryprofound.com"}
]
},
"limit": 10
}'
200
{
"info": {
"total_results": 1,
"count": 1,
"next_cursor": null,
"asset": "Profound",
"models": ["ChatGPT", "Google Gemini", "Perplexity", "..."],
"metrics": ["positive_sentiment", "negative_sentiment", "citation_share"],
"start_date": "2026-06-09",
"end_date": "2026-06-15",
"filter": {
"and": [
{"field": "citation_category", "op": "is", "value": "owned"},
{"field": "page", "op": "contains_case_insensitive", "value": "tryprofound.com"}
]
}
},
"data": [
{
"page": "tryprofound.com/",
"rank": 1,
"positive_sentiment": 100.0,
"negative_sentiment": 0.0,
"citation_share": 1.42
}
]
}
Autorizaciones
APIKeyHeaderBearerAuth
Cuerpo
application/json
The brand name to analyze (sentiment is extracted on name, not id).
YYYY-MM-DD, ET, inclusive
YYYY-MM-DD, ET, inclusive
YYYY-MM-DD, ET, inclusive (with end).
YYYY-MM-DD, ET, inclusive (with start).
Opciones disponibles:
response, citation Opciones disponibles:
date, model, topic, region, prompt, persona, tag, theme, claim, run, competitor Opciones disponibles:
positive_sentiment, negative_sentiment, occurrence, citation_share Opciones disponibles:
day, week, month A leaf (field/op/value) or an and/or/not group.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Return cited websites per row (only when grouping by theme/claim).
Page size; default 10, max 50.
Rango requerido:
0 < x <= 50Stream endpoint only: cap the number of streamed rows (default: all).
Rango requerido:
x > 0¿Esta página le ayudó?