# Verseodin API ## Docs - [Get a single brand's summary (mentions + citations + ranking)](https://docs.verseodin.com/api-reference/brands/get-a-single-brands-summary-mentions-+-citations-+-ranking.md): Same row format as `/universes/{id}/brands` but filtered to one brand. Match is case-insensitive against `brand_name`. - [List brands tracked in a universe (mentions + citations + ranking)](https://docs.verseodin.com/api-reference/brands/list-brands-tracked-in-a-universe-mentions-+-citations-+-ranking.md): Synthesises a per-brand summary from the universe's history row — one entry per distinct brand drawn from `ai_visibility_ranking`, `ai_competitive_analysis`, and `geo_competitor_analysis`. The output **includes the universe owner's own brand AND every competitor**. - [List valid metric names](https://docs.verseodin.com/api-reference/discovery/list-valid-metric-names.md): Discovery endpoint — returns every metric column name that can be passed to `/universes/{id}/metrics/{metric}`. Use this to avoid hard-coding the whitelist in your client. - [Get a single history row by (day, engine)](https://docs.verseodin.com/api-reference/history/get-a-single-history-row-by-day-engine.md): Returns the single history row identified by the universe + day + engine triple. Returns `404` if no row matches. - [Get a single metric column](https://docs.verseodin.com/api-reference/history/get-a-single-metric-column.md): Returns one column from the `history` table for the universe. The column must be one of the names returned by `/metrics`. - [Get bundled scalar metrics for a tab](https://docs.verseodin.com/api-reference/history/get-bundled-scalar-metrics-for-a-tab.md): Returns the scalar columns powering a dashboard tab in one round-trip. Cheaper than calling `/metrics/{metric}` once per column. - [Get full history row(s) — every column](https://docs.verseodin.com/api-reference/history/get-full-history-rows-—-every-column.md): Returns the entire `history` row for the universe — every column documented in `HistoryRow`. Use this when you need the full dashboard payload at once instead of issuing N per-metric calls. - [Get a single prompt by integer prompt_id](https://docs.verseodin.com/api-reference/prompts/get-a-single-prompt-by-integer-prompt_id.md): Returns the prompt record identified by the integer `prompt_id` (the 1-based position the prompt occupies inside the universe — 1, 2, 3, ...). Optional `day` and `engine` query params pin the lookup to a specific run; without them the most recent matching row is returned. - [Get a single prompt by UUID (cross-universe)](https://docs.verseodin.com/api-reference/prompts/get-a-single-prompt-by-uuid-cross-universe.md): Returns one prompt row addressed directly by its UUID. The backend joins to `query_universe` so it can verify ownership without the caller knowing which universe the prompt belongs to. - [Get full prompts row(s) — including AI answer + citations](https://docs.verseodin.com/api-reference/prompts/get-full-prompts-rows-—-including-ai-answer-+-citations.md): Returns full prompt records — every column documented in `PromptRow`, including `response_text` (the full AI answer body) and the `my_citations` / `competitor_citations` URL arrays. - [Get a single universe](https://docs.verseodin.com/api-reference/universes/get-a-single-universe.md): Returns the full `query_universe` row for one universe — name, website, configured competitors and brand-token aliases, the `result_json` blob (which holds the prompt list), location, status, and timestamps. Use `/universes` for the catalogue view; this endpoint is the "fetch one" sibling. - [List days with history data](https://docs.verseodin.com/api-reference/universes/list-days-with-history-data.md): Distinct `day` values that have at least one history row for this universe, newest first. Use this to discover valid `day=` filter values before issuing metric / history / prompts queries. - [List engines with history data](https://docs.verseodin.com/api-reference/universes/list-engines-with-history-data.md): Distinct `engine` values that have at least one history row for this universe. Use this to know which engines have data before filtering by `engine=` on other endpoints. - [List your universes](https://docs.verseodin.com/api-reference/universes/list-your-universes.md): Returns every universe owned by the API key holder that has reached `status='completed'`. Use the `id` from each entry on every other endpoint. - [Authentication](https://docs.verseodin.com/authentication.md): Bearer-token auth using the same key issued from your dashboard. - [Brands — mentions, citations, ranking](https://docs.verseodin.com/concepts/brands.md): Per-brand cross-cut of the data — your brand and every competitor on one row each. - [Data model](https://docs.verseodin.com/concepts/data-model.md): Universes → history rows → prompts. How the three tables fit together. - [Engines](https://docs.verseodin.com/concepts/engines.md): engine vs engine_account: which AI assistant ran a prompt vs which scraper produced the row. - [Metric glossary](https://docs.verseodin.com/concepts/metric-glossary.md): Plain-English definitions of every metric column the API exposes. - [Prompts column glossary](https://docs.verseodin.com/concepts/prompts-glossary.md): Plain-English definition of every column on the prompts table — what it carries, when it's null, what example values look like. - [Errors](https://docs.verseodin.com/errors.md): Stripe-style error envelope and HTTP status code mapping. - [Introduction](https://docs.verseodin.com/introduction.md): Programmatic read-only access to your Verseodin dashboard data — universes, history aggregates, full prompt records with AI answers and citations. - [Quickstart](https://docs.verseodin.com/quickstart.md): First successful API call in three minutes. - [Rate limits](https://docs.verseodin.com/rate-limits.md): 60 requests/minute/key. Token-bucket algorithm. Standard X-RateLimit headers. ## OpenAPI Specs - [openapi](https://docs.verseodin.com/openapi.yaml)