---
title: "Record a product site event (public, rate-limited)."
method: POST
path: "/analytics/event"
tags: ["analytics"]
---

# Record a product site event (public, rate-limited).

`POST /analytics/event`

## Request

- Base URL: `https://api.livegraph.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.livegraph.ai/analytics/event`
- Auth: one of:
  - API key in cookie `livegraph_session`
  - API key in header `x-api-key`

## Request body

- object
  - `name` 'cta_demo' | 'cta_signup' | 'demo_session_started' | 'demo_run_started' | 'demo_scene_selected' | 'signup_completed' | 'onboarding_completed' | 'onboarding_step_entered' | 'onboarding_step_completed' | 'onboarding_step_skipped' | 'voice_stt' | 'voice_agent' | 'voice_tts' | 'voice_roundtrip' | 'voice_barge_in', required
  - `path` string, required
  - `visitorId` string
  - `source` string
  - `step` 'intent' | 'intent_code' | 'intent_assistant' | 'intent_website' | 'assistant' | 'assistant_blank' | 'assistant_ops_chief' | 'github' | 'model' | 'repo' | 'project' | 'workflow' | 'automations' | 'website' | 'recap'
  - `bucket` 'lt1s' | '1_3s' | '3_8s' | '8_20s' | 'gt20s'

## Response `200`

Success — see summary for the response shape.

## Other responses

- `4XX`: Client error — body is the shared {error, code?} envelope.

---

[API](https://skmtc.dev/livegraph/apis/livegraph-api.md) · [All operations](https://skmtc.dev/livegraph/apis/livegraph-api/llms.txt) · [OpenAPI document](https://skmtc.dev/livegraph/apis/livegraph-api/revisions/551085d7719e?raw)
