API Reference
Index of every endpoint in the AIclicks API v1.
All endpoints are under /api/v1/. They return the standard envelope. Click an endpoint to see its parameters, response and examples.
GET endpoints read data. POST endpoints change your account. Each POST endpoint needs a team member on a Pro+ plan.
Account
| Endpoint | Purpose |
|---|---|
GET /validate | Checks that a key works. Shows its scope: teams, allowed domains and rate limit. |
GET /team-usage | Shows the plan of a team and its usage: prompt credits, domains, models and competitor slots. |
Domains
| Endpoint | Purpose |
|---|---|
POST /domains | Makes a new brand with its prompts. The analysis starts immediately. |
GET /domains | Lists the domains that the key can access. Returns the domain_id values for the other endpoints. |
GET /domain-status | Shows the analysis progress of a domain. Use it to know when a new domain has data. |
Prompts
| Endpoint | Purpose |
|---|---|
POST /prompts | Adds one prompt. |
POST /prompts/bulk | Adds up to 100 prompts. Topics and tags are given by name. |
POST /prompts/update | Changes the text, topics or tags of a prompt. |
POST /prompts/archive | Stops tracking up to 100 prompts. Each archived prompt gives back one credit. |
GET /prompts | Lists the tracked prompts of a domain. |
GET /topics | Lists the topics of a domain. |
POST /topics | Makes a topic. |
POST /prompts/topics | Replaces the topics of one prompt. |
GET /tags | Lists the tags of a domain. |
POST /tags | Makes a tag. |
POST /prompts/tags | Adds or removes tags on up to 100 prompts. |
Prompt Analytics
| Endpoint | Purpose |
|---|---|
GET /answers | The AI answers for one prompt, with the answer text, brand position, competitors and cited URLs. |
GET /prompt-metrics | Each prompt with its metrics for the period. You can sort, filter and paginate it. |
GET /prompt-statistics-time-series | Top prompts with a daily series of mentions, responses, citations and position. |
GET /prompt-brands | Each tracked brand for one prompt. Shows which brand wins the prompt. |
GET /topic-metrics | One scorecard for each topic. |
GET /tag-metrics | One scorecard for each tag. |
GET /fanout-queries | The search queries that the AI engines ran to answer each prompt. |
Competitor
| Endpoint | Value | Purpose |
|---|---|---|
GET /brand-rankings | list | Share-of-voice ranking of the brand and its tracked competitors. |
GET /competitor-time-series | list | Daily visibility, share of voice and position for each competitor and the brand. |
GET /competitors | list | The competitors of a domain. |
POST /competitors | object | Starts to track one competitor. |
POST /competitors/bulk | object | Tracks up to 50 competitors from a list or from discovery. |
POST /competitors/update | object | Renames, pauses, resumes or moves a competitor. |
GET /competitor-discovery | list | Brands in your answers that you do not track yet. |
Brand Analytics
| Endpoint | Value | Purpose |
|---|---|---|
GET /mentions-time-series | int | Daily number of brand mentions. |
GET /visibility-time-series | % | Daily share of AI answers that mention the brand. |
GET /model-leaderboard | list | Visibility and average position for each AI channel. |
Citations
| Endpoint | Value | Purpose |
|---|---|---|
GET /citations-time-series | int | Daily number of citations to the brand domain. |
GET /citability-time-series | % | Daily share of all citations that go to the brand domain. |
GET /citations | list | Each cited URL, with frequency, mentions, prompts and models. |
GET /citation-domains | list | Each cited host, with its owner: own, competitor or third party. |
GET /competitor-citations | list | Citations and citation share for the brand and each tracked competitor. |
GET /citation-share | list | Citation share of each brand inside each topic or tag. |
Sentiment Analysis
These endpoints show how AI answers describe the brand. All accept an optional model filter.
| Endpoint | Value | Purpose |
|---|---|---|
GET /sentiment/overview | % | Positive and negative split for the period, and total mentions. |
GET /sentiment/themes | list | The themes in AI answers, each positive or negative. |
GET /sentiment/time-series | % | Daily positive percentage. |
GET /sentiment/theme-sources | list | The URLs that AI answers cite for these themes. |
GET /sentiment/answers | list | The AI answers behind one theme, with the quoted text and cited URLs. |
Engage
| Endpoint | Value | Purpose |
|---|---|---|
GET /engage-recommendations | list | Community threads and posts that AI answers cite. You can reply to them. |
AI Traffic (GA4)
These endpoints show the site traffic that AI assistants send. The data comes from the GA4 property of the domain. All accept an optional llm_source filter. If the domain has no GA4 connection, they return empty data, not an error.
| Endpoint | Value | Purpose |
|---|---|---|
GET /ga4/summary | object | Total sessions, users and pageviews from AI, and the previous period. |
GET /ga4/timeline | list | Daily sessions from AI, divided by LLM source. |
GET /ga4/by-llm | object | The totals for each LLM source, and the previous period. |
GET /ga4/key-events | object | Conversions from AI traffic: total, for each LLM, and top events. |
GET /ga4/key-events-timeline | list | Daily conversions from AI traffic, divided by event and LLM source. |
GET /ga4/top-pages | list | Pages sorted by sessions from AI. |
GET /ga4/top-locations | list | Sessions from AI for each country. |
GET /ga4/devices | list | Sessions from AI for each device category. |
GET /ga4/top-browsers | list | Sessions from AI for each browser (top 10). |
ChatGPT Ads
| Endpoint | Value | Purpose |
|---|---|---|
GET /ads/kpis | object | Main ad metrics, with the change against the previous period. |
GET /ads/leaderboard | list | Brands that advertise on ChatGPT for your prompts. |
GET /ads/timeline | list | Daily ad activity. |
GET /ads/prompts | list | Tracked prompts that show ads. |
GET /ads/cards | list | Each ad card, with its creative and advertiser. |
Required parameters
Most endpoints need ?domain_id=<uuid> as a query parameter. If you do not have a domain ID, call GET /domains first.
/validate has no query parameters. /team-usage needs team_id.
Common response shape
All endpoints use the same envelope (data, generated_at, and the request parameters). They also use the same rate-limit and cache headers. See Overview and Rate Limits.