List prompts
curl --request GET \
--url https://www.qwairy.co/api/v1/brands/{brandId}/prompts \
--header 'Authorization: <authorization>'import requests
url = "https://www.qwairy.co/api/v1/brands/{brandId}/prompts"
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', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"pagination": {
"total": 123,
"count": 123,
"limit": 123,
"offset": 123
},
"prompts": [
{
"id": "<string>",
"text": "<string>",
"topic": "<string>",
"type": "<string>",
"tags": [
{}
],
"answersCount": 123,
"mentionRate": 123,
"sourceRate": 123,
"lastGeneratedAt": "<string>",
"competitors": [
{}
],
"competitorsCount": 123,
"competitorMentionsTotal": 123,
"brandMentioned": true,
"brandMentionCount": 123,
"sources": [
{}
],
"sourcesCount": 123,
"sourceCitationsTotal": 123,
"sourceStability": 123,
"createdAt": "<string>"
}
]
}Prompts
List prompts
Get paginated prompts with search and filtering options.
GET
https://www.qwairy.co
/
api
/
v1
/
brands
/
{brandId}
/
prompts
List prompts
curl --request GET \
--url https://www.qwairy.co/api/v1/brands/{brandId}/prompts \
--header 'Authorization: <authorization>'import requests
url = "https://www.qwairy.co/api/v1/brands/{brandId}/prompts"
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', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"pagination": {
"total": 123,
"count": 123,
"limit": 123,
"offset": 123
},
"prompts": [
{
"id": "<string>",
"text": "<string>",
"topic": "<string>",
"type": "<string>",
"tags": [
{}
],
"answersCount": 123,
"mentionRate": 123,
"sourceRate": 123,
"lastGeneratedAt": "<string>",
"competitors": [
{}
],
"competitorsCount": 123,
"competitorMentionsTotal": 123,
"brandMentioned": true,
"brandMentionCount": 123,
"sources": [
{}
],
"sourcesCount": 123,
"sourceCitationsTotal": 123,
"sourceStability": 123,
"createdAt": "<string>"
}
]
}Lists monitored prompts with answer counts and response-level SELF metrics. A prompt can have a funnel stage, topic, and tags.
Synthetic response with
See Rate limits for retry behavior.
string
required
Bearer token. Example:
Bearer qw-api-xxxPath parameters
string
required
The unique identifier of the brand
Query parameters
number
Number of days to include. Returns prompts that received at least one answer within the window. If not specified, returns all data.
string
Start date in
YYYY-MM-DD (for example, 2026-03-05). Provide it with endDate; a lone boundary is currently ignored. Choose either period or the complete date pair.string
End date in
YYYY-MM-DD (for example, 2026-03-31). Provide it with startDate; a lone boundary is currently ignored. Do not combine the complete date pair with period.When a date range is provided, both the prompt list and the per-prompt
include=details aggregations (answersCount, competitors[].mentions, brandMentionCount, sources[].citations) are scoped to that window. Prompts that ran multiple times still appear if at least one of their runs falls inside the range.string
Filter by topic ID (keywordId). Supports comma-separated multi-select (e.g.,
id1,id2).string
Filter by tag ID. Supports comma-separated multi-select (e.g.,
id1,id2).string
Filter by prompt type:
TOFU, MOFU, BOFUnumber
default:"50"
Maximum number of prompts to return (max: 100)
number
default:"0"
Pagination offset
string
default:"lastGeneratedAt"
Field to sort by:
lastGeneratedAt, answersCount, text, createdAtstring
default:"desc"
Sort order:
asc or descstring
Set to
details to enrich each prompt with aggregated competitors, sources, brand mentions, and source stability metrics. When omitted, the response includes only the base fields listed below.Response
boolean
Indicates if the request was successful
object
array
Show Prompt object
Show Prompt object
string
Prompt ID
string
Prompt text
string
Associated topic name
string
Prompt type (TOFU/MOFU/BOFU)
array
List of tag names
number
Number of generated answers
number
Answers with a SELF mention divided by answers with a SELF or DIRECT mention
number
Answers with a SELF citation divided by answers with a SELF or DIRECT citation
string
Last generation timestamp (ISO 8601)
Show Additional fields when include=details
Show Additional fields when include=details
array
List of competitors mentioned across all answers for this prompt.
Each object contains
name (string), mentions (number), and relationship (SELF, DIRECT, INDIRECT).number
Number of unique competitors mentioned
number
Total competitor mentions across all answers
boolean
Whether your brand was mentioned in any answer
number
Number of times your brand was mentioned
array
List of source domains cited across all answers for this prompt.
Each object contains
domain (string), citations (number), and isSelf (boolean).number
Number of unique source domains cited
number
Total source citations across all answers
number
Percentage of distinct source domains present in every scoped answer when there is more than one answer; otherwise
0string
Prompt creation timestamp (ISO 8601)
Synthetic request
curl "https://www.qwairy.co/api/v1/brands/YOUR_BRAND_ID/prompts?type=TOFU&limit=10" \
-H "Authorization: Bearer $QWAIRY_API_TOKEN"
Synthetic response
{
"success": true,
"pagination": {
"total": 156,
"count": 1,
"limit": 10,
"offset": 0
},
"prompts": [
{
"id": "prompt_01",
"text": "Which analytics platforms support warehouse exports?",
"topic": "Data exports",
"type": "TOFU",
"tags": ["reviews", "comparison"],
"answersCount": 2,
"mentionRate": 50.0,
"sourceRate": 25.0,
"lastGeneratedAt": "2026-07-19T10:00:00.000Z"
}
]
}
Synthetic response with include=details
curl "https://www.qwairy.co/api/v1/brands/YOUR_BRAND_ID/prompts?include=details&limit=10" \
-H "Authorization: Bearer $QWAIRY_API_TOKEN"
{
"success": true,
"pagination": {
"total": 156,
"count": 1,
"limit": 10,
"offset": 0
},
"prompts": [
{
"id": "prompt_01",
"text": "Which analytics platforms support warehouse exports?",
"topic": "Data exports",
"type": "TOFU",
"tags": ["reviews", "comparison"],
"answersCount": 2,
"mentionRate": 50.0,
"sourceRate": 25.0,
"lastGeneratedAt": "2024-12-19T10:00:00.000Z",
"competitors": [
{ "name": "Acme Analytics", "mentions": 3, "relationship": "SELF" },
{ "name": "Rival Labs", "mentions": 8, "relationship": "DIRECT" },
{ "name": "Northstar Data", "mentions": 5, "relationship": "DIRECT" }
],
"competitorsCount": 3,
"competitorMentionsTotal": 16,
"brandMentioned": true,
"brandMentionCount": 3,
"sources": [
{ "domain": "acme.example", "citations": 2, "isSelf": true },
{ "domain": "reviews.example", "citations": 4, "isSelf": false },
{ "domain": "publisher.example", "citations": 3, "isSelf": false }
],
"sourcesCount": 3,
"sourceCitationsTotal": 9,
"sourceStability": 33.33,
"createdAt": "2026-07-01T10:00:00.000Z"
}
]
}
Errors
| Status | Meaning |
|---|---|
400 | Invalid query parameter |
401 | Missing or invalid API token |
404 | Brand not found or inaccessible |
429 | Rate limit exceeded; honor Retry-After |

