Get perception snapshot
curl --request GET \
--url https://www.qwairy.co/api/v1/brands/{brandId}/perception/{snapshotId} \
--header 'Authorization: <authorization>'import requests
url = "https://www.qwairy.co/api/v1/brands/{brandId}/perception/{snapshotId}"
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}/perception/{snapshotId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"brand": {},
"snapshot": {
"snapshotId": "<string>",
"month": 123,
"year": 123,
"scores": {},
"attributes": [
{}
],
"attributeMetrics": {},
"insights": {},
"providers": [
{}
],
"createdAt": "<string>",
"completedAt": "<string>"
}
}Perception
Get perception snapshot
Retrieve one completed perception snapshot with scores, attribute alignment, and SWOT observations, using the snapshotId from the perception history.
GET
https://www.qwairy.co
/
api
/
v1
/
brands
/
{brandId}
/
perception
/
{snapshotId}
Get perception snapshot
curl --request GET \
--url https://www.qwairy.co/api/v1/brands/{brandId}/perception/{snapshotId} \
--header 'Authorization: <authorization>'import requests
url = "https://www.qwairy.co/api/v1/brands/{brandId}/perception/{snapshotId}"
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}/perception/{snapshotId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"brand": {},
"snapshot": {
"snapshotId": "<string>",
"month": 123,
"year": 123,
"scores": {},
"attributes": [
{}
],
"attributeMetrics": {},
"insights": {},
"providers": [
{}
],
"createdAt": "<string>",
"completedAt": "<string>"
}
}Returns one completed perception snapshot. Get
A
The SWOT arrays are stored model-generated observations. Treat them as inputs to review, not verified facts or forecasts.
snapshotId from the history array returned by List perception snapshots.
Path parameters
Response
Show Snapshot
Show Snapshot
Brand attributes evaluated by AI. Each object has
text (string) and status (aligned, partial, missing).404 RESOURCE_NOT_FOUND is returned if the snapshot does not exist, is not COMPLETED, or does not belong to the brand.
Synthetic request
curl -X GET "https://www.qwairy.co/api/v1/brands/cm1234567890abcdef/perception/snap_2026_05" \
-H "Authorization: Bearer qw-api-your-token-here"
Synthetic response
{
"success": true,
"brand": {
"id": "cm1234567890abcdef",
"name": "Northstar Labs",
"domain": "northstar.example"
},
"snapshot": {
"snapshotId": "snap_2026_05",
"month": 5,
"year": 2026,
"scores": {
"sentiment": 78,
"alignment": 65,
"consistency": 82,
"factualAlignment": 71
},
"attributes": [
{ "text": "Premium positioning", "status": "aligned" },
{ "text": "Sustainable materials", "status": "partial" },
{ "text": "Made in France", "status": "missing" }
],
"attributeMetrics": {
"aligned": 1,
"partial": 1,
"missing": 1,
"total": 3
},
"insights": {
"strengths": ["Strong brand recognition in core market"],
"weaknesses": ["Limited awareness of product range"],
"opportunities": ["Growing demand in adjacent category"],
"threats": ["Aggressive competitor messaging"]
},
"providers": ["chatgpt", "perplexity"],
"createdAt": "2026-05-01T03:00:00.000Z",
"completedAt": "2026-05-03T04:12:00.000Z"
}
}
Errors
| Status | Code | Description |
|---|---|---|
401 | gateway error | Authentication failed |
404 | RESOURCE_NOT_FOUND | Brand or completed snapshot not found or not accessible |
429 | gateway error | Rate limit exceeded; honor Retry-After |

