---
title: "Create Product Event"
method: POST
path: "/events"
tags: ["events"]
---

# Create Product Event

`POST /events`

## Request

- Base URL: `https://api.tickertrac.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.tickertrac.com/events`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

Record only UI interactions the server cannot observe directly.

Ownership is resolved server-side before recording stable identifiers. Callers
cannot attach their event to another user's watchlist, alert, replay or theme version.

## Request body

- ProductEventIn
  - `session_id` string, uuid, nullable
  - `event_name` 'app_session_started' | 'first_thesis_input_started' | 'baseline_viewed' | 'historical_replay_viewed' | 'investment_theme_evidence_viewed' | 'historical_replay_warmup_viewed' | 'historical_replay_ready_viewed' | 'historical_replay_warmup_failed_viewed' | 'historical_replay_demo_viewed' | 'historical_replay_evidence_inspected' | 'historical_replay_source_opened' | 'company_state_viewed' | 'thesis_timeline_viewed' | 'thesis_timeline_marker_inspected' | 'thesis_timeline_source_opened' | 'thesis_timeline_event_marked_important' | 'thesis_timeline_event_unmarked_important' | 'alert_opened' | 'alert_evidence_inspected' | 'alert_source_opened' | 'digest_cta_opened' | 'upgrade_prompt_viewed' | 'second_company_attempt' | 'first_thesis_wizard_started' | 'first_thesis_wizard_completed' | 'thesis_exploration_action' | 'guidance_preference_set' | 'example_thesis_opened' | 'example_theme_opened' | 'phone_notification_opened' | 'call_drift_viewed' | 'language_changes_viewed' | 'call_drift_finding_inspected' | 'match_run_started' | 'match_added_to_watchlist' | 'ticker_row_expanded' | 'thesis_desk_artifact_viewed' | 'thesis_desk_source_inspected' | 'thesis_desk_source_opened' | 'thesis_desk_workspace_opened' | 'thesis_desk_request_refused' | 'thesis_desk_revision_proposal_viewed' | 'thesis_desk_event_marked_important' | 'thesis_desk_event_unmarked_important', required
  - `watchlist_id` integer, nullable
  - `ticker` string, nullable
  - `alert_id` integer, nullable
  - `replay_evaluation_id` integer, nullable
  - `shared_thesis_id` integer, nullable
  - `shared_thesis_version_id` integer, nullable
  - `digest_idempotency_key` string, nullable
  - `properties` object

## Response `204`

Successful Response

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/tickertrac/apis/tickerrag-api.md) · [All operations](https://skmtc.dev/tickertrac/apis/tickerrag-api/llms.txt) · [OpenAPI document](https://skmtc.dev/tickertrac/apis/tickerrag-api/revisions/3c7eb0f6425d?raw)
