---
title: "Ventas por código de seguimiento y campaña vinculada (#22 B5,"
method: GET
path: "/events/{eventId}/sales-provenance/campaigns"
tags: ["Event Sales Provenance"]
---

# Ventas por código de seguimiento y campaña vinculada (#22 B5,

`GET /events/{eventId}/sales-provenance/campaigns`

## Request

- Base URL: `http://localhost:8081`
- URL: `http://localhost:8081/events/{eventId}/sales-provenance/campaigns`
- Auth: HTTP bearer

Lee el token `nv1` de `utm_campaign` (gramática compartida con nev-api
`CampaignTrackingToken`) y lo resuelve contra los vínculos `CONFIRMED` de
`campaign_event_links` del evento cuyo tenant propietario y tenant del evento están ambos en
el ámbito del JWT. Una venta nunca se reparte ni se mueve de evento. Evento del token frente
al `eventId` de la compra: `MATCH`, `MISMATCH` (token de otro evento: solo diagnóstico),
`AMBIGUOUS` (tokens de dos eventos) y `NONE` (sin token); su suma es igual a
`eventTotals`. Dentro de `MATCH`, la campaña: `RESOLVED` (exactamente un vínculo),
`UNRESOLVED` (ningún vínculo en el ámbito), `AMBIGUOUS` (más de un vínculo o dos campañas
en el token) y `EVENT_ONLY` (sin campaña identificada); su suma es igual a `event.MATCH`.
Si alguna suma no cuadra: 500 `INVARIANT_VIOLATION`. `links.available=false` indica que la
colección de vínculos aún no existe en el entorno. 503 `CAMPAIGN_LINKS_UNAVAILABLE` si
MongoDB no responde.

## Path parameters

- `eventId` string, required

## Query parameters

- `from` string, date, required
- `to` string, date, required
- `tz` string
- `currency` string
- `population` 'SETTLED_SALES' | 'REFUNDED_FULL' | 'REFUNDED_UNREPRESENTABLE' | 'ALL_REPORTED'

## Response `200`

Ventas por clase y campaña

## Other responses

- `400`: Parámetro inválido (INVALID_DATE, INVALID_RANGE, INVALID_TZ, INVALID_CURRENCY, INVALID_POPULATION, INVALID_DIMENSION, INVALID_LEVEL, INVALID_PARENT, INVALID_KEY, INVALID_PARAM, INVALID_EVENT)
- `404`: El evento no existe o no pertenece al ámbito del JWT (indistinguible)
- `500`: INVARIANT_VIOLATION (el desglose no concilia; no se devuelven cifras parciales) o INTERNAL_ERROR
- `503`: CAMPAIGN_LINKS_UNAVAILABLE: MongoDB no disponible para leer los vínculos

---

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