> ## 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/batch

> Receive a batch of beacon tracking events



## OpenAPI

````yaml /api/openapi/beacon-api.json post /events/batch
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/batch:
    post:
      tags:
        - Events
      description: Receive a batch of beacon tracking events
      operationId: postEventsBatch
      requestBody:
        content:
          application/json:
            schema:
              items:
                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
              type: array
      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

````