---
title: "Record a privacy-safe registry event"
method: POST
path: "/events"
---

# Record a privacy-safe registry event

`POST /events`

## Request

- Base URL: `https://superskill.sh/api`
- URL: `https://superskill.sh/api/events`
- Auth: none declared

Accepts whitelisted event kinds and drops prompts, paths, credentials, body subject and arbitrary metadata. Managed lifecycle kinds live-check the same confirmed Supabase user and superskill:managed grant as recommendation/archive, derive the canonical subject server-side, and accept legacy alpha only as public-GO-ineligible compatibility. An exact eventId replay is idempotent; a changed replay is a conflict.

## Request body

- object
  - `kind` 'view' | 'copy' | 'install' | 'pull' | 'checkout' | 'purchase' | 'suggested' | 'accepted' | 'applied' | 'eval' | 'gate' | 'escrow_reserved' | 'escrow_captured' | 'escrow_refunded' | 'recommended' | 'recommendation_accepted' | 'activation_started' | 'activation_ready' | 'activation_loaded' | 'activation_invoked' | 'outcome_reported' | 'activation_pinned' | 'activation_removed' | 'activation_failed', required
  - `eventId` string
  - `recommendationId` string
  - `activationId` string
  - `mode` 'temporary' | 'pinned'
  - `evidence` 'agent_reported' | 'user_confirmed' | 'unknown'
  - `outcome` 'success' | 'failed' | 'unknown'
  - `reasonCode` string
  - `owner` string
  - `repo` string
  - `version` string
  - `target` string
  - `client` string

## Response `200`

Managed event recorded or exact replay accepted

- object
  - `recorded` boolean, required
  - `duplicate` boolean, required

## Other responses

- `202`: Non-managed event accepted
- `400`: Bad request
- `401`: Authorization required
- `403`: Authorization was provided but is not allowed for this action
- `409`: EVENT_CONFLICT: eventId replay changed subject or payload
- `503`: Managed auth or event storage unavailable

---

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