Basics

Start Response Streaming

Changed on

Run tracked prompts against external AI providers to collect new responses for a website. Sends prompt text to the selected providers, stores their responses in AthenaHQ, and consumes response credits. Starts immediately; use only for a user-requested run. Returns a workflow_id; poll GET /api/v1/response-streaming/status for progress. Requires a website-admin API key.

post/api/v1/response-streaming/start

Request

  • Base URL
    https://api.athenahq.ai
  • Auth
    API key in header x-api-key

Request body

website_idstring uuid required

Website to run the response streaming for.

schedule_idstring uuid

Schedule UUID to attribute this run to and take prompt selectors from. A nonempty prompt_ids selection overrides those selectors. Omit to attribute the run to Default and run every active prompt unless prompt_ids is supplied. Explicit model, fan-out, persona and location choices apply to this run. The schedule must belong to this website and must not be archived.

prompt_idsstring[]

Specific tracked prompt UUIDs to run, from 1 to 1,000. Overrides schedule prompt selectors when supplied. Omit to use schedule_id selectors, or every active prompt when schedule_id is also omitted. Paused prompts are skipped.

selected_modelsobject

Map of model id to enabled flag (e.g. { "ai_overview": true, "ai_mode": false }). Model ids: chatgpt, ai_overview (Google AI Overviews; google_ai_overview, its name in the model filters, is also accepted), perplexity, gemini, copilot, ai_mode, grok, claude, deepseek, meta_ai, mistral. Omit to run every currently active model — this is not the dashboard's saved default selection. An id set to true that names no model is rejected with 400, as is an explicit selection that resolves to no available models.

prompt_variationsinteger

Number of paraphrased variations to generate per prompt (0–10).

use_personasboolean

Whether to run the prompts through configured personas.

use_locationsboolean

Whether to run the prompts across the website's configured locations.

only_locationsboolean

When true, skip the base (non-localized) run and execute only the location-scoped variants. Requires use_locations: true: sending only_locations: true without use_locations: true queues nothing (the base run is skipped and no location variants are added), so the run completes as a no-op.

Response

Run started

workflow_idstring required
status'running' required

Changes