Prompt answers
curl --request GET \
--url https://www.qwairy.co/api/v1/brands/{brandId}/prompts/{promptId}/answers \
--header 'Authorization: <authorization>'import requests
url = "https://www.qwairy.co/api/v1/brands/{brandId}/prompts/{promptId}/answers"
headers = {"Authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<authorization>'}};
fetch('https://www.qwairy.co/api/v1/brands/{brandId}/prompts/{promptId}/answers', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));Prompts
Prompt answers
Retrieve all stored AI-generated answers for a specific monitored prompt of a brand, optionally filtered by provider. This endpoint is not paginated.
GET
https://www.qwairy.co
/
api
/
v1
/
brands
/
{brandId}
/
prompts
/
{promptId}
/
answers
Prompt answers
curl --request GET \
--url https://www.qwairy.co/api/v1/brands/{brandId}/prompts/{promptId}/answers \
--header 'Authorization: <authorization>'import requests
url = "https://www.qwairy.co/api/v1/brands/{brandId}/prompts/{promptId}/answers"
headers = {"Authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<authorization>'}};
fetch('https://www.qwairy.co/api/v1/brands/{brandId}/prompts/{promptId}/answers', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));Returns all stored answers for one prompt, optionally filtered by provider. This endpoint is not paginated.
See Rate limits for retry behavior.
Path parameters
Query parameters
Synthetic request
curl "https://www.qwairy.co/api/v1/brands/YOUR_BRAND_ID/prompts/PROMPT_ID/answers" \
-H "Authorization: Bearer $QWAIRY_API_TOKEN"
Synthetic response
{
"success": true,
"prompt": {
"id": "prompt_01",
"text": "Which analytics platforms support warehouse exports?"
},
"total": 2,
"answers": [
{
"id": "answer_01",
"provider": "ChatGPT",
"model": "GPT-6.1 Sol",
"persona": { "id": "persona_01", "name": "Data lead", "description": null },
"text": "Acme Analytics and Rival Labs document warehouse export integrations.",
"hasSelfMention": true,
"selfMentionPosition": 3,
"hasSelfSource": false,
"competitorsMentioned": ["Acme Analytics", "Rival Labs"],
"sourcesCited": ["publisher.example", "reviews.example"],
"sentiment": 82,
"status": "COMPLETED",
"createdAt": "2026-07-19T10:00:00.000Z"
},
{
"id": "answer_02",
"provider": "Perplexity",
"model": "Perplexity Sonar",
"persona": null,
"text": "The cited documentation lists supported export destinations.",
"hasSelfMention": true,
"selfMentionPosition": 2,
"hasSelfSource": true,
"competitorsMentioned": ["Acme Analytics", "Northstar Data"],
"sourcesCited": ["acme.example", "docs.example"],
"sentiment": 78,
"status": "COMPLETED",
"createdAt": "2026-07-19T10:05:00.000Z"
}
]
}
sentiment is the SELF mention sentiment on a 0 to 100 scale, or null.
status is PROCESSING, COMPLETED, or PARTIAL_ERROR. PROCESSING means the response text is available but its analyses are still incomplete.
persona is the persona recorded when the answer was generated (id, name, description), or null for an answer generated without a persona.
Errors
| Status | Meaning |
|---|---|
401 | Missing or invalid API token |
404 | Brand or prompt not found |
429 | Rate limit exceeded; honor Retry-After |

