---
title: "Record Tracking Event"
method: POST
path: "/api/v1/tracking/"
tags: ["tracking"]
---

# Record Tracking Event

`POST /api/v1/tracking/`

## Request

- Base URL: `https://api.alert.camp` (the document declares no server; this is the origin it was published from)
- URL: `https://api.alert.camp/api/v1/tracking/`
- Auth: none declared

Record a tracking event (QR scan, campaign redirect, etc.).

Public endpoint — no authentication required.
Extracts CF-IPCountry header when available (Cloudflare sends it for free).

## Request body

- TrackingCreate: Schema for creating a tracking event.
  - `event_type` string, required
  - `source` string, required
  - `platform` string, required
  - `user_agent` string, nullable

## Response `201`

Successful Response

- TrackingResponse: Schema for tracking event response.
  - `id` integer, required
  - `recorded_at` string, date-time, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/alert/apis/alertcamp.md) · [All operations](https://skmtc.dev/alert/apis/alertcamp/llms.txt) · [OpenAPI document](https://skmtc.dev/alert/apis/alertcamp/revisions/864c8c9ef833?raw)
