Waikay Brand Visibility API — Developer Documentation
Welcome! This guide shows you how to fetch your projects and track brand-visibility data (overview, sources, and rankings) for each project and prompt.
Base URL
https://app.waikay.io or the one mentioned in your dashboard
Authentication
Your API key is available in the Waikay dashboard . Pass it as the key query parameter on every request:
Copy code
?key=YOUR_API_KEY
Note: Header-based auth isn’t documented at this time; use the key query parameter.
Resources & Endpoints
1) List Projects
Retrieve all projects you have access to.
GET /api/projects?key=YOUR_API_KEY
Query Parameters
Name Type Required Description
key string Yes Your API key.
Sample Request
Copy code
curl "https://app.waikay.io/api/projects?key=YOUR_API_KEY"
Sample Response
{
"code":"200","customer_id":1,"projects":[
{"project_id":20217,"project_url":"example1.com"},
{"project_id":20234,"project_url":"example2.com"},
{"project_id":20242,"project_url":"example3.com"}
]}
2) Track Brand Visibility - Project Level
Fetch brand-visibility data for a project, targeted to one of the sources: overview, sources, rankings, or scores.
GET /api/track?key=API_KEY&project=PROJECT_ID&source=overview|sources|rankings|scores
Query Parameters
Name Type Required Description
key string Yes Your API key.
project integer Yes Project ID from List Projects .
source enum Yes One of overview, sources, rankings, scores.
Overview (All prompts) — Sample Response
API Response includes the list of running prompts for this project and the list of topic reports/action plans available
{
"code": "200",
"project_id": 20242,
"prompt_id": null,
"source": "Overview",
"data": {
"meta": {
"exported_at_utc": "2025-10-01T14:32:50+00:00",
"window_current_days": 7,
"window_prev_days": 7
},
"prompts": [
{
"prompt_id": 41,
"prompt": "Recommend some entity SEO tools",
"created_at": "2025-06-11 12:16:27",
"current_week": {
"total": 9,
"per_model": [
{
"id": 100,
"name": "Gemini",
"count": 4
},
{
"id": 3,
"name": "chatGPT",
"count": 4
},
{
"id": 1,
"name": "Sonar",
"count": 0
},
{
"id": 5,
"name": "Claude",
"count": 1
}
]
},
"previous_week": {
"total": 8,
"per_model": [
{
"id": 100,
"name": "Gemini",
"count": 3
},
{
"id": 3,
"name": "chatGPT",
"count": 3
},
{
"id": 1,
"name": "Sonar",
"count": 0
},
{
"id": 5,
"name": "Claude",
"count": 2
}
]
},
"delta": 1
}
],
"topic_reports": [
{
"topic": "Topic 1",
"updated": "2025-08-18",
"url": "https://jscloud.net/wk/5f4123a7cbc9f9e4a29fc9117120f38d.json"
},
{
"topic": "Topic 2",
"updated": "2025-08-21",
"url": "https://jscloud.net/wk/ebb4902ff7dd69344b073277653c671b.json"
}
]
}
}
Rankings (All prompts) — Sample Response
{
"code": "200",
"project_id": 20242,
"project_url": "https://inlinks.com",
"prompt_id": null,
"source": "rankings",
"data": {
"prompt": {
"prompt_id": null,
"prompt_name": "All prompts",
"window_days": 30
},
"summary": {
"brand_occurrences_total": 1468,
"exported_at_utc": "2025-10-02T07:45:52+00:00"
},
"rankings": [
{
"rank": 1,
"brand_key": "semrush",
"brand_display_name": "Semrush",
"occurrences": 86,
"share_of_voice_percent": 6,
"is_project_brand": false
},
{
"rank": 2,
"brand_key": "surferseo",
"brand_display_name": "Surfer SEO",
"occurrences": 72,
"share_of_voice_percent": 5,
"is_project_brand": false
},
{
"rank": 3,
"brand_key": "inlinks",
"brand_display_name": "InLinks",
"occurrences": 68,
"share_of_voice_percent": 5,
"is_project_brand": true
}
]
}
}
Sources (All prompts) — Sample Response
{
"code": "200",
"project_id": 20242,
"project_url": "http://inlinks.com",
"prompt_id": null,
"source": "sources",
"data": {
"filters": {
"prompt_id": null,
"window_days": 30
},
"summary": {
"total_sources": 577,
"total_citations": 5037,
"total_urls": 927,
"exported_at_utc": "2025-10-02T07:49:22+00:00"
},
"sources": [
{
"source_key": "searchatlas.com",
"source_display_name": "searchatlas.com",
"citations": 165,
"models": {
"Sonar": 24,
"chatGPT": 11,
"Gemini": 85,
"Claude": 45
},
"urls": [
{
"url": "https://searchatlas.com/blog/automated-internal-linking/",
"citations": 68
},
{
"url": "https://searchatlas.com/blog/schema-markup-tools/",
"citations": 38
},
(...)
]
},
{
"source_key": "backlinko.com",
"source_display_name": "backlinko.com",
"citations": 153,
"models": {
"Sonar": 30,
"chatGPT": 5,
"Claude": 68,
"Gemini": 50
},
"urls": [
{
"url": "https://backlinko.com/best-free-seo-tools",
"citations": 74
},
{
"url": "https://backlinko.com/best-enterprise-seo-tools",
"citations": 16
},
(...)
]
}
]
}
}
AI Knowledge Scores (All topic reports - last 365 days) — Sample Response
{
"code": "200",
"project_id": 8888,
"project_url": "http://example.com",
"prompt_id": null,
"source": "scores",
"data": {
"summary": {
"exported_at_utc": "2025-11-20T13:26:11+00:00",
"window_days": 365,
},
"ai_knowledge_scores": {
"Topic 1": {
"gemini-grounded": {
"2025-09-09": 68,
"2025-10-09": 72,
"2025-11-07": 78
},
"sonar": {
"2025-09-09": 74,
"2025-10-09": 68,
"2025-11-07": 84
},
"chatGPT": {
"2025-09-09": 72,
"2025-10-09": 72,
"2025-11-07": 80
},
"gemini": {
"2025-09-09": 80,
"2025-10-09": 82,
"2025-11-07": 78
},
"claude": {
"2025-09-09": 62,
"2025-10-09": 78,
"2025-11-07": 98
}
},
"Brand overview": {
"sonar": {
"2025-09-09": 88,
"2025-10-09": 86,
"2025-11-07": 95
},
"chatGPT": {
"2025-09-09": 90,
"2025-10-09": 87,
"2025-11-07": 94
},
"gemini": {
"2025-09-09": 81,
"2025-10-09": 89,
"2025-11-07": 86
},
"claude": {
"2025-09-09": 89,
"2025-10-09": 96,
"2025-11-07": 93
},
"gemini-grounded": {
"2025-09-09": 94,
"2025-10-09": 88,
"2025-11-07": 86
}
}
}
}
}
3) Track Brand Visibility - Prompt level
Fetch brand-visibility data for a project, scoped to a specific prompt, and targeted to one of the sources: overview, sources, or rankings.
GET /api/track?key=API_KEY&project=PROJECT_ID&prompt=PROMPT_ID&source=overview|sources|rankings
Query Parameters
Name Type Required Description
key string Yes Your API key.
project integer Yes Project ID from List Projects .
source enum Yes One of overview, sources, rankings.
prompt integer No Prompt ID. If omitted, results are aggregated at project level.
Behavior: Omit prompt → project-level. Include prompt → prompt-level.
Overview — Prompt level — Sample Response
{
"prompt_id":1055,
"prompt":"Tools for brand reputation management LLM",
"created_at":"2025-09-16 09:54:18",
"current_week":{"total":20,"per_model":[
{"id":100,"name":"Gemini","count":7},
{"id":3,"name":"chatGPT","count":7},
{"id":1,"name":"Sonar","count":2},
{"id":5,"name":"Claude","count":4}
]},
"previous_week":{"total":16,"per_model":[
{"id":100,"name":"Gemini","count":6},
{"id":3,"name":"chatGPT","count":6},
{"id":1,"name":"Sonar","count":2},
{"id":5,"name":"Claude","count":2}
]},
"delta":4
}
Rankings — Prompt level — Sample Response
{
"code": "200",
"project_id": 20522,
"prompt_id": 1055,
"source": "Rankings",
"data": {
"prompt": {
"prompt_id": 1055,
"prompt_name": "tools for brand reputation management LLM",
"window_days": 30
},
"summary": {
"brand_occurrences_total": 324,
"exported_at_utc": "2025-10-01T13:42:25+00:00"
},
"rankings": [
{
"rank": 1,
"brand_key": "waikay",
"brand_display_name": "Waikay",
"occurrences": 18,
"share_of_voice_percent": 6,
"is_project_brand": true
},
{
"rank": 2,
"brand_key": "brand24",
"brand_display_name": "Brand24",
"occurrences": 12,
"share_of_voice_percent": 4,
"is_project_brand": false
},
(...)
]
}
}
Sources — Prompt level — Sample Response
{
"code": "200",
"project_id": 20522,
"prompt_id": 1055,
"source": "Sources",
"data": {
"filters": {
"prompt_id": 1055,
"window_days": 30
},
"summary": {
"total_sources": 84,
"total_citations": 301,
"total_urls": 94,
"exported_at_utc": "2025-10-01T13:42:59+00:00"
},
"model_metadata": [],
"sources": [
{
"source_key": "designrush.com",
"source_display_name": "designrush.com",
"citations": 19,
"models": {
"Gemini": 8,
"chatGPT": 4,
"Claude": 7
},
"urls": [
{
"url": "https://www.designrush.com/agency/ai-companies/trends/tools-for-tracking-llm-brand-visibility",
"citations": 11
},
{
"url": "https://www.designrush.com/agency/reputation-management-companies/trends/ai-reputation-management",
"citations": 8
}
]
},
{
"source_key": "semrush.com",
"source_display_name": "semrush.com",
"citations": 19,
"models": {
"Gemini": 8,
"chatGPT": 4,
"Claude": 7
},
"urls": [
{
"url": "https://www.semrush.com/blog/llm-monitoring-tools/",
"citations": 17
},
{
"url": "https://www.semrush.com/blog/llm-optimization/",
"citations": 2
}
]
},
(...)
]
}
}
OpenAPI (YAML)
Copy code openapi: 3.0.3
info: { title: Waikay Brand Visibility API, version: 1.0.0 }
servers: [ { url: https://app.waikay.io } ]
paths:
/api/projects:
get:
parameters:
- { name: key, in: query, required: true, schema: { type: string } }
/api/track:
get:
parameters:
- { name: key, in: query, required: true, schema: { type: string } }
- { name: project, in: query, required: true, schema: { type: integer } }
- { name: prompt, in: query, required: false, schema: { type: integer } }
- { name: source, in: query, required: true, schema: { type: string, enum: [overview, sources, rankings] } }
© Waikay — Brand Visibility API. Example data as provided.