Skip to main content

Seat maps and detect

Two different pipelines. Mixing them up is the usual bug: detect JSON is not what Event stores, and Event does not run predict.

Predict (detect)​

Promoter UI  →  promoter-api  POST …/seat-maps/predict  →  api-seating-detect  POST /upload
  • UI: eventlinx-promoter (upload / preview).
  • BFF: eventlinx-api-promoter proxies predict. It does not send predict to Event.
  • Detect: api-seating-detect POST /upload returns detect JSON.

Event’s own seat-map predict is 501 / not mounted. Do not call Event for predict.

Persist / sell / hold​

Mapped persist payload  →  Event (SoR)

After a human (or client mapper) turns detect JSON into Event’s persist shape, persist, sell, and hold are Event:

  • First reserved inventory write locks the map.
  • Holds/sales of RS seats require seatIds.
  • GA quantity is unrelated to pixel detect; do not send detect JSON as GA inventory.

Schema boundary​

Detect JSON and Event’s persist schema are different. Clients map between them. This site does not document either schema (accuracy over completeness; schemas live in code / OpenAPI).

ArtifactOwnerUse
Detect JSONapi-seating-detectProposal / preview of a map from an image.
Persist bodyEventThe map inventory is sold against.
Client mapperPromoter UI (and any other caller)Translates detect → persist.

If predict output “looks right” in the promoter UI but Event rejects persist, the mapper or lock state is the suspect — not Event predict (it is not mounted).