Skip to main content
Get granular URL-level citation data. While the Sources endpoint shows domain-level aggregates, this endpoint provides page-by-page citation details.

List Source URLs

Authorization
string
required
Bearer token. Example: Bearer qw-api-xxx
GET /api/v1/brands/{brandId}/source-urls

Path Parameters

brandId
string
required
The unique identifier of the brand

Query Parameters

period
number
Number of days to include. If not specified, returns all data.
startDate
string
Start date (ISO 8601 format)
endDate
string
End date (ISO 8601 format)
provider
string
Filter by AI provider
domain
string
Filter by specific domain
isSelf
string
Filter by self domains: true or false
isCompetitor
string
Filter by competitor domains: true or false
limit
number
default:"50"
Maximum number of URLs to return (max: 100)
offset
number
default:"0"
Number of results to skip for pagination
sort
string
default:"mentions"
Field to sort by: mentions, position, shareOfVoice, url
order
string
default:"desc"
Sort order: asc or desc

Response

success
boolean
Indicates if the request was successful
pagination
object
sourceUrls
array

Example Request

curl -X GET "https://www.qwairy.co/api/v1/brands/cm1234567890abcdef/source-urls?isSelf=true&limit=10" \
  -H "Authorization: Bearer qw-api-your-token-here"

Example Response

{
  "success": true,
  "pagination": {
    "total": 156,
    "count": 2,
    "limit": 10,
    "offset": 0
  },
  "sourceUrls": [
    {
      "url": "https://mybrand.com/blog/best-practices",
      "title": "Best Practices Guide - MyBrand",
      "domain": "mybrand.com",
      "isSelf": true,
      "isCompetitor": false,
      "totalMentions": 45,
      "avgPosition": 2.1,
      "shareOfVoice": 3.5
    },
    {
      "url": "https://mybrand.com/features/comparison",
      "title": "Feature Comparison - MyBrand",
      "domain": "mybrand.com",
      "isSelf": true,
      "isCompetitor": false,
      "totalMentions": 32,
      "avgPosition": 3.4,
      "shareOfVoice": 2.1
    }
  ]
}

Error Responses

StatusCodeDescription
401INVALID_TOKENAuthentication failed
404BRAND_NOT_FOUNDBrand doesn’t exist or not accessible