> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fanfare.io/llms.txt
> Use this file to discover all available pages before exploring further.

# POST /events

> Receive a single beacon tracking event



## OpenAPI

````yaml /api/openapi/beacon-api.json post /events
openapi: 3.1.0
info:
  description: Beacon API for Fanfare
  title: Fanfare Beacon API
  version: 1.0.0
servers:
  - description: Production
    url: https://beacon.fanfare.io/api
  - description: Local development
    url: http://localhost:4803
security:
  - BeaconPublishableKeyAuth: []
paths:
  /events:
    post:
      tags:
        - Events
      description: Receive a single beacon tracking event
      operationId: postEvents
      requestBody:
        content:
          application/json:
            schema:
              oneOf:
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: pageView
                    eventProperties:
                      properties:
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        pageType:
                          type: string
                        postalCode:
                          type: string
                        timezone:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: productImpression
                    eventProperties:
                      properties:
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        listName:
                          type: string
                        position:
                          type: number
                        postalCode:
                          type: string
                        productId:
                          type: string
                        timezone:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: productClick
                    eventProperties:
                      properties:
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        listName:
                          type: string
                        position:
                          type: number
                        postalCode:
                          type: string
                        productId:
                          type: string
                        timezone:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: productView
                    eventProperties:
                      properties:
                        brand:
                          type: string
                        category:
                          type: string
                        currency:
                          type: string
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        postalCode:
                          type: string
                        price:
                          type: string
                        productId:
                          type: string
                        productName:
                          type: string
                        sku:
                          type: string
                        timezone:
                          type: string
                        variant:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: addToCart
                    eventProperties:
                      properties:
                        cartId:
                          type: string
                        category:
                          type: string
                        currency:
                          type: string
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        postalCode:
                          type: string
                        price:
                          type: string
                        productId:
                          type: string
                        productName:
                          type: string
                        quantity:
                          type: number
                        sku:
                          type: string
                        timezone:
                          type: string
                        variant:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: removeFromCart
                    eventProperties:
                      properties:
                        cartId:
                          type: string
                        category:
                          type: string
                        currency:
                          type: string
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        postalCode:
                          type: string
                        price:
                          type: string
                        productId:
                          type: string
                        productName:
                          type: string
                        quantity:
                          type: number
                        sku:
                          type: string
                        timezone:
                          type: string
                        variant:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: viewCart
                    eventProperties:
                      properties:
                        cartId:
                          type: string
                        cartTotal:
                          type: string
                        currency:
                          type: string
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        itemCount:
                          type: number
                        postalCode:
                          type: string
                        timezone:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: beginCheckout
                    eventProperties:
                      properties:
                        cartId:
                          type: string
                        cartTotal:
                          type: string
                        couponCodeApplied:
                          type: string
                        currency:
                          type: string
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        itemCount:
                          type: number
                        postalCode:
                          type: string
                        timezone:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: purchase
                    eventProperties:
                      properties:
                        couponCodeUsed:
                          type: string
                        currency:
                          type: string
                        discountAmount:
                          type: string
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        orderId:
                          type: string
                        postalCode:
                          type: string
                        products:
                          items:
                            properties:
                              category:
                                type: string
                              price:
                                type: string
                              productId:
                                type: string
                              productName:
                                type: string
                              quantity:
                                type: number
                              sku:
                                type: string
                              variant:
                                type: string
                            required: []
                            type: object
                          type: array
                        shippingCost:
                          type: string
                        subtotal:
                          type: string
                        tax:
                          type: string
                        timezone:
                          type: string
                        totalRevenue:
                          type: string
                        transactionId:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: searchSubmitted
                    eventProperties:
                      properties:
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        postalCode:
                          type: string
                        resultsCount:
                          type: number
                        searchQuery:
                          type: string
                        timezone:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: qrScanned
                    eventProperties:
                      properties:
                        experienceId:
                          type: string
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        locationId:
                          type: string
                        postalCode:
                          type: string
                        qrPayload:
                          type: string
                        sequenceId:
                          type: string
                        timezone:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: messageSent
                    eventProperties:
                      properties:
                        channel:
                          enum:
                            - email
                            - sms
                          type: string
                        consumerId:
                          type: string
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        messageId:
                          type: string
                        postalCode:
                          type: string
                        priority:
                          type: string
                        template:
                          type: string
                        timezone:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: messageDelivered
                    eventProperties:
                      properties:
                        channel:
                          enum:
                            - email
                            - sms
                          type: string
                        consumerId:
                          type: string
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        messageId:
                          type: string
                        postalCode:
                          type: string
                        priority:
                          type: string
                        template:
                          type: string
                        timezone:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: messageBounced
                    eventProperties:
                      properties:
                        bounceType:
                          type: string
                        channel:
                          enum:
                            - email
                            - sms
                          type: string
                        consumerId:
                          type: string
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        messageId:
                          type: string
                        postalCode:
                          type: string
                        priority:
                          type: string
                        template:
                          type: string
                        timezone:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: messageComplained
                    eventProperties:
                      properties:
                        channel:
                          enum:
                            - email
                            - sms
                          type: string
                        complaintType:
                          type: string
                        consumerId:
                          type: string
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        messageId:
                          type: string
                        postalCode:
                          type: string
                        priority:
                          type: string
                        template:
                          type: string
                        timezone:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: messageClicked
                    eventProperties:
                      properties:
                        channel:
                          enum:
                            - email
                            - sms
                          type: string
                        consumerId:
                          type: string
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        messageId:
                          type: string
                        postalCode:
                          type: string
                        priority:
                          type: string
                        template:
                          type: string
                        timezone:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: messageOpened
                    eventProperties:
                      properties:
                        channel:
                          enum:
                            - email
                            - sms
                          type: string
                        consumerId:
                          type: string
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        messageId:
                          type: string
                        postalCode:
                          type: string
                        priority:
                          type: string
                        template:
                          type: string
                        timezone:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: messageRead
                    eventProperties:
                      properties:
                        channel:
                          enum:
                            - email
                            - sms
                          type: string
                        consumerId:
                          type: string
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        messageId:
                          type: string
                        postalCode:
                          type: string
                        priority:
                          type: string
                        template:
                          type: string
                        timezone:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
                - properties:
                    anonymousId:
                      type: string
                    appVersion:
                      type: string
                    beaconRequestId:
                      type: string
                    browserName:
                      type: string
                    browserVersion:
                      type: string
                    consumerId:
                      type: string
                    deviceType:
                      type: string
                    eventId:
                      type: string
                    eventName:
                      const: messageFailed
                    eventProperties:
                      properties:
                        channel:
                          enum:
                            - email
                            - sms
                          type: string
                        consumerId:
                          type: string
                        geoLat:
                          type: number
                        geoLng:
                          type: number
                        messageId:
                          type: string
                        postalCode:
                          type: string
                        priority:
                          type: string
                        retryCount:
                          type: number
                        template:
                          type: string
                        timezone:
                          type: string
                      required: []
                      type: object
                    eventSchemaVersion:
                      type: string
                    eventTimestamp:
                      type: string
                    eventTimestampNs:
                      type: string
                    geoCity:
                      type: string
                    geoCountry:
                      type: string
                    geoLatitude:
                      type: number
                    geoLongitude:
                      type: number
                    geoRegion:
                      type: string
                    ipAddress:
                      type: string
                    organizationId:
                      type: string
                    osName:
                      type: string
                    osVersion:
                      type: string
                    pagePath:
                      type: string
                    pageTitle:
                      type: string
                    pageUrl:
                      type: string
                    platform:
                      type: string
                    receivedTimestamp:
                      type: string
                    receivedTimestampNs:
                      type: string
                    referrerUrl:
                      type: string
                    referringDomain:
                      type: string
                    screenName:
                      type: string
                    segments:
                      properties:
                        rfm:
                          enum:
                            - CHAMPIONS
                            - LOYAL
                            - AT_RISK
                            - NEW
                            - LOST
                          type: string
                      required: []
                      type: object
                    sessionId:
                      type: string
                    userAgent:
                      type: string
                    userId:
                      type: string
                    utmCampaign:
                      type: string
                    utmContent:
                      type: string
                    utmMedium:
                      type: string
                    utmSource:
                      type: string
                    utmTerm:
                      type: string
                  required:
                    - organizationId
                    - eventId
                    - eventName
                    - eventTimestamp
                  type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                type: 'null'
          description: Event accepted for processing.
        '400':
          content:
            application/json:
              schema:
                properties:
                  error:
                    const: validation_error
                  issues:
                    items:
                      properties:
                        expected:
                          type: string
                        kind:
                          type: string
                        message:
                          type: string
                        path:
                          items:
                            properties:
                              input: {}
                              key:
                                type: string
                              origin:
                                type: string
                              type:
                                type: string
                            required:
                              - type
                              - origin
                              - input
                              - key
                            type: object
                          type: array
                        received:
                          type: string
                        type:
                          type: string
                      required:
                        - kind
                        - type
                        - expected
                        - received
                        - message
                        - path
                      type: object
                    type: array
                required:
                  - error
                  - issues
                type: object
          description: Bad Request - Invalid input schema
        '401':
          content:
            application/json:
              schema:
                properties:
                  error:
                    type: string
                required:
                  - error
                type: object
          description: Unauthorized - Authentication required
        '403':
          content:
            application/json:
              schema:
                properties:
                  error:
                    type: string
                required:
                  - error
                type: object
          description: Forbidden - User must be authenticated
        '500':
          content:
            application/json:
              schema:
                properties:
                  error:
                    type: string
                required:
                  - error
                type: object
          description: Internal server error
components:
  securitySchemes:
    BeaconPublishableKeyAuth:
      description: Browser-safe publishable key for client-side event collection.
      in: header
      name: X-Publishable-Key
      type: apiKey

````