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

# Get paginated events

> Retrieve a paginated list of events.



## OpenAPI

````yaml /openapi/integration.json get /events
openapi: 3.0.3
info:
  title: Nudj Integration API
  version: 1.0.0
servers:
  - url: https://{subdomain}.nudj.cx/api/v2/integration
    description: Organization API Server
    variables:
      subdomain:
        description: Your organization's subdomain (required)
        default: your-org
security:
  - ApiToken: []
paths:
  /events:
    get:
      tags:
        - Event
      summary: Get paginated events
      description: Retrieve a paginated list of events.
      operationId: getPaginatedEvents
      parameters:
        - in: query
          name: limit
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 10
          required: false
        - in: query
          name: skip
          schema:
            type: integer
            minimum: 0
            default: 0
          required: false
        - in: query
          name: sort
          schema:
            type: string
        - in: query
          name: search
          schema:
            type: string
        - in: query
          name: communityId
          schema:
            type: string
        - in: query
          name: allocationId
          schema:
            type: string
        - in: query
          name: featured
          schema:
            type: boolean
        - in: query
          name: verified
          schema:
            type: boolean
        - in: query
          name: isShop
          schema:
            type: boolean
        - in: query
          name: type
          schema:
            type: string
        - in: query
          name: status
          schema:
            type: string
        - in: query
          name: eventCategory
          schema:
            type: string
        - in: query
          name: eventSubCategory
          schema:
            type: string
        - in: query
          name: eventName
          schema:
            type: string
        - in: query
          name: displayMode
          schema:
            type: string
        - in: query
          name: fromDate
          schema:
            type: string
        - in: query
          name: toDate
          schema:
            type: string
        - in: query
          name: isGlobalTemplate
          schema:
            type: boolean
        - in: query
          name: key
          schema:
            type: string
        - in: query
          name: progressPeriod
          schema:
            type: string
        - in: query
          name: expand
          schema:
            type: string
        - in: query
          name: redeemableType
          schema:
            type: string
        - in: query
          name: nonce
          schema:
            type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  totalCount:
                    type: number
                  edges:
                    type: array
                    items:
                      $ref: '#/components/schemas/Event'
                required:
                  - totalCount
                  - edges
        '400':
          description: Invalid input data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error.BAD_REQUEST'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error.NOT_FOUND'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error.INTERNAL_SERVER_ERROR'
components:
  schemas:
    Event:
      type: object
      properties:
        id:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
          description: The id of the event
        nonce:
          type: string
          minLength: 1
          description: >-
            The unique nonce for event deduplication and idempotency. Format:
            eventSubCategory:entityId:userId:...
        eventCategory:
          type: string
          enum:
            - achievement
            - action
            - auth
            - blog
            - challenge
            - community
            - custom
            - game
            - leaderboard
            - organisation
            - points
            - post
            - referral
            - reward
            - shop
            - social
            - social-connection
            - streak
            - user
            - variable
            - xp
          description: The category of the event
        eventSubCategory:
          type: string
          enum:
            - achievement-completion
            - facebook-comment
            - facebook-follow
            - facebook-like
            - image-analysis-object-detection
            - image-analysis-receipt-detection
            - instagram-follow
            - instagram-like
            - instagram-comment
            - instagram-share
            - instagram-post
            - interaction-engage-with-content
            - interaction-external-link
            - interaction-image-upload
            - interaction-spot-object
            - platform-comment-on-post
            - platform-complete-achievement
            - platform-generative-action
            - platform-like-post
            - platform-play-game
            - platform-validate-event
            - question-multiple-choice
            - question-open-ended
            - question-rate-your-experience
            - question-secret-access-code
            - question-select-date
            - question-select-from-images
            - question-select-value-in-range
            - question-select-from-list
            - question-closed-ended
            - question-vote
            - spotify-follow
            - spotify-listen
            - spotify-save
            - tiktok-follow
            - tiktok-watch
            - tiktok-post
            - youtube-like
            - youtube-comment
            - youtube-subscribe
            - action-completion
            - skip-action
            - 42-school
            - api-auth-link
            - api-token-link
            - apple
            - asgardeo
            - atlassian
            - auth0
            - authentik
            - azure-ad-b2c
            - azure-ad
            - azure-devops
            - battlenet
            - beyondidentity
            - box
            - boxyhq-saml
            - bungie
            - click-up
            - cognito
            - coinbase
            - descope
            - discord
            - dribbble
            - dropbox
            - duende-identity-server6
            - email
            - eveonline
            - facebook
            - faceit
            - foursquare
            - freshbooks
            - fusionauth
            - github
            - gitlab
            - google
            - hubspot
            - identity-server4
            - instagram
            - kakao
            - keycloak
            - line
            - linkedin
            - mailchimp
            - mailru
            - mastodon
            - mattermost
            - medium
            - naver
            - netlify
            - notion
            - okta
            - onelogin
            - organisation-oidc
            - osso
            - osu
            - passage
            - patreon
            - pinterest
            - pipedrive
            - reddit
            - salesforce
            - slack
            - spotify
            - strava
            - tiktok
            - todoist
            - trakt
            - twitch
            - twitter
            - united-effects
            - vk
            - wikimedia
            - wordpress
            - workos
            - yandex
            - youtube
            - zitadel
            - zoho
            - zoom
            - blog-comment
            - blog-like
            - blog-share
            - blog-view
            - challenge-started
            - challenge-completion
            - challenge-unlock
            - community-visit
            - parental-approval-requested
            - parental-approval-approved
            - parental-approval-rejected
            - custom
            - game-started
            - game-completed
            - leaderboard-finish
            - invite-admin-user
            - points-credit
            - points-spend
            - post-comment
            - post-like
            - post-view
            - reward-redemption
            - reward-allocation-purchase
            - reward-giveaway-winner
            - reward-claim
            - reward-distribution
            - manual-distribution
            - referral-link-used
            - shop-purchase
            - share-challenge-details
            - share-challenge-results
            - share-community
            - share-reward
            - share-post
            - share-profile
            - share-anything
            - streak-extended
            - profile-picture-added
            - bio-added
            - variable-captured
            - xp-gained
            - xp-total
            - xp-leaderboard-topper
          description: The sub-category of the event
        organisationId:
          type: string
          nullable: true
          pattern: ^[0-9a-fA-F]{24}$
          description: The organisation that the event belongs to
        communityId:
          type: string
          nullable: true
          pattern: ^[0-9a-fA-F]{24}$
          description: The community that the event belongs to
        userId:
          type: string
          nullable: true
          pattern: ^[0-9a-fA-F]{24}$
          description: The user that the event belongs to
        eventSourceId:
          type: string
          nullable: true
          pattern: ^[0-9a-fA-F]{24}$
          description: >-
            The Id of an entity that is associated with this event. For example,
            a challenge or an achievement
        payload:
          allOf:
            - $ref: '#/components/schemas/EventPayload'
          nullable: true
          description: The payload of the event
        tags:
          type: array
          nullable: true
          items:
            type: string
            pattern: ^[0-9a-fA-F]{24}$
          description: The tags associated with the event
        createdAt:
          type: string
          description: The date when the event was created
      required:
        - id
        - nonce
        - eventCategory
        - eventSubCategory
        - createdAt
      description: An event
      title: Event
    error.BAD_REQUEST:
      type: object
      properties:
        message:
          type: string
          description: The error message
          example: Invalid input data
        code:
          type: string
          description: The error code
          example: BAD_REQUEST
        issues:
          type: array
          items:
            type: object
            properties:
              message:
                type: string
              path:
                type: array
                items:
                  oneOf:
                    - type: string
                    - type: integer
                description: The path to the field that caused the error
            required:
              - message
          description: An array of issues that were responsible for the error
          example: []
      required:
        - message
        - code
      title: Error
      description: The error information
      example:
        code: BAD_REQUEST
        message: Invalid input data
        issues: []
    error.NOT_FOUND:
      type: object
      properties:
        message:
          type: string
          description: The error message
          example: Not found
        code:
          type: string
          description: The error code
          example: NOT_FOUND
        issues:
          type: array
          items:
            type: object
            properties:
              message:
                type: string
              path:
                type: array
                items:
                  oneOf:
                    - type: string
                    - type: integer
                description: The path to the field that caused the error
            required:
              - message
          description: An array of issues that were responsible for the error
          example: []
      required:
        - message
        - code
      title: Error
      description: The error information
      example:
        code: NOT_FOUND
        message: Not found
        issues: []
    error.INTERNAL_SERVER_ERROR:
      type: object
      properties:
        message:
          type: string
          description: The error message
          example: Internal server error
        code:
          type: string
          description: The error code
          example: INTERNAL_SERVER_ERROR
        issues:
          type: array
          items:
            type: object
            properties:
              message:
                type: string
              path:
                type: array
                items:
                  oneOf:
                    - type: string
                    - type: integer
                description: The path to the field that caused the error
            required:
              - message
          description: An array of issues that were responsible for the error
          example: []
      required:
        - message
        - code
      title: Error
      description: The error information
      example:
        code: INTERNAL_SERVER_ERROR
        message: Internal server error
        issues: []
    EventPayload:
      anyOf:
        - $ref: '#/components/schemas/EventCustom'
        - $ref: '#/components/schemas/PlatformEventPayload'
      title: Event Payload
      description: The payload of an event
    EventCustom:
      type: object
      properties:
        name:
          type: string
          description: The name of the custom event
      required:
        - name
      description: A custom event
      title: Custom Event
    PlatformEventPayload:
      oneOf:
        - $ref: '#/components/schemas/EventAchievementCompleted'
        - $ref: '#/components/schemas/EventChallengeCompleted'
        - $ref: '#/components/schemas/EventChallengeStarted'
        - $ref: '#/components/schemas/EventGameStarted'
        - $ref: '#/components/schemas/EventGameCompleted'
        - $ref: '#/components/schemas/EventReferralLinkUsed'
        - $ref: '#/components/schemas/EventRewardRedeemed'
        - $ref: '#/components/schemas/EventRewardClaimed'
        - $ref: '#/components/schemas/EventRewardDistributed'
        - $ref: '#/components/schemas/EventXpGained'
        - $ref: '#/components/schemas/EventOrganisationInviteUser'
        - $ref: '#/components/schemas/EventAuthEmail'
        - $ref: '#/components/schemas/EventPostLike'
        - $ref: '#/components/schemas/EventPostComment'
        - $ref: '#/components/schemas/EventVariableCaptured'
        - $ref: '#/components/schemas/EventStreakExtended'
        - $ref: '#/components/schemas/EventManualRewardDistribution'
        - $ref: '#/components/schemas/EventLeaderboardFinish'
        - $ref: '#/components/schemas/EventShopPurchase'
      discriminator:
        propertyName: name
        mapping:
          achievement_achievement-completion:
            $ref: '#/components/schemas/EventAchievementCompleted'
          challenge_challenge-completion:
            $ref: '#/components/schemas/EventChallengeCompleted'
          challenge_challenge-started:
            $ref: '#/components/schemas/EventChallengeStarted'
          game_game-started:
            $ref: '#/components/schemas/EventGameStarted'
          game_game-completed:
            $ref: '#/components/schemas/EventGameCompleted'
          referral_referral-link-used:
            $ref: '#/components/schemas/EventReferralLinkUsed'
          reward_reward-redemption:
            $ref: '#/components/schemas/EventRewardRedeemed'
          reward_reward-claim:
            $ref: '#/components/schemas/EventRewardClaimed'
          reward_reward-distribution:
            $ref: '#/components/schemas/EventRewardDistributed'
          xp_xp-gained:
            $ref: '#/components/schemas/EventXpGained'
          organisation_invite-admin-user:
            $ref: '#/components/schemas/EventOrganisationInviteUser'
          auth_email:
            $ref: '#/components/schemas/EventAuthEmail'
          post_post-like:
            $ref: '#/components/schemas/EventPostLike'
          post_post-comment:
            $ref: '#/components/schemas/EventPostComment'
          variable_variable-captured:
            $ref: '#/components/schemas/EventVariableCaptured'
          streak_streak-extended:
            $ref: '#/components/schemas/EventStreakExtended'
          reward_manual-distribution:
            $ref: '#/components/schemas/EventManualRewardDistribution'
          leaderboard_leaderboard-finish:
            $ref: '#/components/schemas/EventLeaderboardFinish'
          shop_shop-purchase:
            $ref: '#/components/schemas/EventShopPurchase'
      title: Platform Event Payload
      description: The payload of a platform event
    EventAchievementCompleted:
      type: object
      properties:
        name:
          type: string
          enum:
            - achievement_achievement-completion
        details:
          $ref: '#/components/schemas/Details'
        value:
          type: number
          nullable: true
        period:
          type: string
          enum:
            - daily
            - weekly
            - monthly
            - yearly
            - open
        tags:
          type: array
          items:
            type: string
        campaigns:
          type: array
          items:
            type: string
      required:
        - name
        - details
        - period
        - tags
        - campaigns
      title: Achievement Completed Event
      description: An achievement completed event
    EventChallengeCompleted:
      type: object
      properties:
        name:
          type: string
          enum:
            - challenge_challenge-completion
        organisationId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
        communityId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
        challengeId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
        userId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
      required:
        - name
        - organisationId
        - communityId
        - challengeId
        - userId
      title: Challenge Completed Event
      description: A challenge completed event
    EventChallengeStarted:
      type: object
      properties:
        name:
          type: string
          enum:
            - challenge_challenge-started
        organisationId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
        communityId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
        challengeId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
        userId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
      required:
        - name
        - organisationId
        - communityId
        - challengeId
        - userId
      title: Challenge Started Event
      description: A challenge started event
    EventGameStarted:
      type: object
      properties:
        name:
          type: string
          enum:
            - game_game-started
        gameType:
          type: string
          enum:
            - catch
            - memory
            - scratch
        gameConfigId:
          type: string
        nonce:
          type: string
          description: >-
            Unique nonce for idempotency - used to prevent duplicate game
            sessions
      required:
        - name
        - gameType
        - gameConfigId
        - nonce
      title: Game Started Event
      description: A game started event
    EventGameCompleted:
      type: object
      properties:
        name:
          type: string
          enum:
            - game_game-completed
        gameType:
          type: string
          enum:
            - catch
            - memory
            - scratch
        gameConfigId:
          type: string
        score:
          type: number
        nonce:
          type: string
          description: >-
            Unique nonce for idempotency - used to prevent duplicate game
            completions
      required:
        - name
        - gameType
        - gameConfigId
        - score
        - nonce
      title: Game Completed Event
      description: A game completed event
    EventReferralLinkUsed:
      type: object
      properties:
        name:
          type: string
          enum:
            - referral_referral-link-used
        invitedUserId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
        invitedUserEmail:
          type: string
      required:
        - name
        - invitedUserId
        - invitedUserEmail
      title: Referral Link Used Event
      description: A referral link used event
    EventRewardRedeemed:
      type: object
      properties:
        name:
          type: string
          enum:
            - reward_reward-redemption
        rewardAssetId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
          description: The id of the reward asset
        rewardId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
          description: The id of the reward that the asset was created from
        details:
          $ref: '#/components/schemas/Details'
        metadata:
          type: object
          additionalProperties:
            anyOf:
              - type: string
              - type: number
              - type: boolean
              - type: array
                items:
                  anyOf:
                    - type: string
                    - type: number
                    - type: boolean
          description: Additional metadata for the reward
        campaigns:
          type: array
          items:
            type: string
            pattern: ^[0-9a-fA-F]{24}$
          description: The campaigns that the reward belongs to
        redeemedAt:
          type: string
          description: The date the reward was redeemed by the user
        expiresAt:
          type: string
          nullable: true
          description: The date the reward asset will expire
        createdAt:
          type: string
          description: The date the reward asset was created
        updatedAt:
          type: string
          description: The date the reward asset was last updated
      required:
        - name
        - rewardAssetId
        - rewardId
        - details
        - metadata
        - campaigns
        - redeemedAt
        - createdAt
        - updatedAt
      title: Reward Redeemed Event
      description: A reward redeemed event
    EventRewardClaimed:
      type: object
      properties:
        name:
          type: string
          enum:
            - reward_reward-claim
        rewardAssetId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
          description: The id of the reward asset
        rewardId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
          description: The id of the reward that the asset was created from
        details:
          $ref: '#/components/schemas/Details'
        metadata:
          type: object
          additionalProperties:
            anyOf:
              - type: string
              - type: number
              - type: boolean
              - type: array
                items:
                  anyOf:
                    - type: string
                    - type: number
                    - type: boolean
          description: Additional metadata for the reward
        campaigns:
          type: array
          items:
            type: string
            pattern: ^[0-9a-fA-F]{24}$
          description: The campaigns that the reward belongs to
        claimedAt:
          type: string
          description: The date the reward was claimed by the user
        expiresAt:
          type: string
          nullable: true
          description: The date the reward asset will expire
        createdAt:
          type: string
          description: The date the reward asset was created
        updatedAt:
          type: string
          description: The date the reward asset was last updated
      required:
        - name
        - rewardAssetId
        - rewardId
        - details
        - metadata
        - campaigns
        - claimedAt
        - createdAt
        - updatedAt
      title: Reward Claimed Event
      description: A reward claimed event
    EventRewardDistributed:
      type: object
      properties:
        name:
          type: string
          enum:
            - reward_reward-distribution
        distributionEventId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
          description: The id of the distribution event
        user:
          $ref: '#/components/schemas/WebhookUser'
        trigger:
          type: object
          properties:
            event:
              type: string
              enum:
                - achievement-completion
                - facebook-comment
                - facebook-follow
                - facebook-like
                - image-analysis-object-detection
                - image-analysis-receipt-detection
                - instagram-follow
                - instagram-like
                - instagram-comment
                - instagram-share
                - instagram-post
                - interaction-engage-with-content
                - interaction-external-link
                - interaction-image-upload
                - interaction-spot-object
                - platform-comment-on-post
                - platform-complete-achievement
                - platform-generative-action
                - platform-like-post
                - platform-play-game
                - platform-validate-event
                - question-multiple-choice
                - question-open-ended
                - question-rate-your-experience
                - question-secret-access-code
                - question-select-date
                - question-select-from-images
                - question-select-value-in-range
                - question-select-from-list
                - question-closed-ended
                - question-vote
                - spotify-follow
                - spotify-listen
                - spotify-save
                - tiktok-follow
                - tiktok-watch
                - tiktok-post
                - youtube-like
                - youtube-comment
                - youtube-subscribe
                - action-completion
                - skip-action
                - 42-school
                - api-auth-link
                - api-token-link
                - apple
                - asgardeo
                - atlassian
                - auth0
                - authentik
                - azure-ad-b2c
                - azure-ad
                - azure-devops
                - battlenet
                - beyondidentity
                - box
                - boxyhq-saml
                - bungie
                - click-up
                - cognito
                - coinbase
                - descope
                - discord
                - dribbble
                - dropbox
                - duende-identity-server6
                - email
                - eveonline
                - facebook
                - faceit
                - foursquare
                - freshbooks
                - fusionauth
                - github
                - gitlab
                - google
                - hubspot
                - identity-server4
                - instagram
                - kakao
                - keycloak
                - line
                - linkedin
                - mailchimp
                - mailru
                - mastodon
                - mattermost
                - medium
                - naver
                - netlify
                - notion
                - okta
                - onelogin
                - organisation-oidc
                - osso
                - osu
                - passage
                - patreon
                - pinterest
                - pipedrive
                - reddit
                - salesforce
                - slack
                - spotify
                - strava
                - tiktok
                - todoist
                - trakt
                - twitch
                - twitter
                - united-effects
                - vk
                - wikimedia
                - wordpress
                - workos
                - yandex
                - youtube
                - zitadel
                - zoho
                - zoom
                - blog-comment
                - blog-like
                - blog-share
                - blog-view
                - challenge-started
                - challenge-completion
                - challenge-unlock
                - community-visit
                - parental-approval-requested
                - parental-approval-approved
                - parental-approval-rejected
                - custom
                - game-started
                - game-completed
                - leaderboard-finish
                - invite-admin-user
                - points-credit
                - points-spend
                - post-comment
                - post-like
                - post-view
                - reward-redemption
                - reward-allocation-purchase
                - reward-giveaway-winner
                - reward-claim
                - reward-distribution
                - manual-distribution
                - referral-link-used
                - shop-purchase
                - share-challenge-details
                - share-challenge-results
                - share-community
                - share-reward
                - share-post
                - share-profile
                - share-anything
                - streak-extended
                - profile-picture-added
                - bio-added
                - variable-captured
                - xp-gained
                - xp-total
                - xp-leaderboard-topper
              description: >-
                The event that triggered the distribution. Some examples are
                'challenge-completion' and 'achievement-completion'.
            entityId:
              type: string
              nullable: true
              pattern: ^[0-9a-fA-F]{24}$
              description: >-
                The id of the entity. For example, if the triggerEvent is
                'challenge-completion', then the id is for a challenge.
          required:
            - event
            - entityId
        earnedPoints:
          type: number
          minimum: 0
          description: The number of points earned in this distribution
        earnedXp:
          type: number
          minimum: 0
          description: The amount of XP earned in this distribution
        earnedRewards:
          type: array
          items:
            $ref: '#/components/schemas/AcquiredReward'
        earnedEntries:
          type: array
          items:
            $ref: '#/components/schemas/AcquiredEntry'
        campaigns:
          type: array
          items:
            type: string
            pattern: ^[0-9a-fA-F]{24}$
          description: The campaigns that the distribution belongs to
        distributedAt:
          type: string
          description: The date the rewards were distributed to the user
        createdAt:
          type: string
          description: The date the event was created
        updatedAt:
          type: string
          description: The date the event was last updated
      required:
        - name
        - distributionEventId
        - user
        - trigger
        - earnedPoints
        - earnedXp
        - earnedRewards
        - earnedEntries
        - campaigns
        - distributedAt
        - createdAt
        - updatedAt
      title: Reward Distributed Event
      description: A reward distribution event
    EventXpGained:
      type: object
      properties:
        name:
          type: string
          enum:
            - xp_xp-gained
        eventCategory:
          type: string
          enum:
            - achievement
            - action
            - auth
            - blog
            - challenge
            - community
            - custom
            - game
            - leaderboard
            - organisation
            - points
            - post
            - referral
            - reward
            - shop
            - social
            - social-connection
            - streak
            - user
            - variable
            - xp
        eventSubCategory:
          type: string
          enum:
            - achievement-completion
            - facebook-comment
            - facebook-follow
            - facebook-like
            - image-analysis-object-detection
            - image-analysis-receipt-detection
            - instagram-follow
            - instagram-like
            - instagram-comment
            - instagram-share
            - instagram-post
            - interaction-engage-with-content
            - interaction-external-link
            - interaction-image-upload
            - interaction-spot-object
            - platform-comment-on-post
            - platform-complete-achievement
            - platform-generative-action
            - platform-like-post
            - platform-play-game
            - platform-validate-event
            - question-multiple-choice
            - question-open-ended
            - question-rate-your-experience
            - question-secret-access-code
            - question-select-date
            - question-select-from-images
            - question-select-value-in-range
            - question-select-from-list
            - question-closed-ended
            - question-vote
            - spotify-follow
            - spotify-listen
            - spotify-save
            - tiktok-follow
            - tiktok-watch
            - tiktok-post
            - youtube-like
            - youtube-comment
            - youtube-subscribe
            - action-completion
            - skip-action
            - 42-school
            - api-auth-link
            - api-token-link
            - apple
            - asgardeo
            - atlassian
            - auth0
            - authentik
            - azure-ad-b2c
            - azure-ad
            - azure-devops
            - battlenet
            - beyondidentity
            - box
            - boxyhq-saml
            - bungie
            - click-up
            - cognito
            - coinbase
            - descope
            - discord
            - dribbble
            - dropbox
            - duende-identity-server6
            - email
            - eveonline
            - facebook
            - faceit
            - foursquare
            - freshbooks
            - fusionauth
            - github
            - gitlab
            - google
            - hubspot
            - identity-server4
            - instagram
            - kakao
            - keycloak
            - line
            - linkedin
            - mailchimp
            - mailru
            - mastodon
            - mattermost
            - medium
            - naver
            - netlify
            - notion
            - okta
            - onelogin
            - organisation-oidc
            - osso
            - osu
            - passage
            - patreon
            - pinterest
            - pipedrive
            - reddit
            - salesforce
            - slack
            - spotify
            - strava
            - tiktok
            - todoist
            - trakt
            - twitch
            - twitter
            - united-effects
            - vk
            - wikimedia
            - wordpress
            - workos
            - yandex
            - youtube
            - zitadel
            - zoho
            - zoom
            - blog-comment
            - blog-like
            - blog-share
            - blog-view
            - challenge-started
            - challenge-completion
            - challenge-unlock
            - community-visit
            - parental-approval-requested
            - parental-approval-approved
            - parental-approval-rejected
            - custom
            - game-started
            - game-completed
            - leaderboard-finish
            - invite-admin-user
            - points-credit
            - points-spend
            - post-comment
            - post-like
            - post-view
            - reward-redemption
            - reward-allocation-purchase
            - reward-giveaway-winner
            - reward-claim
            - reward-distribution
            - manual-distribution
            - referral-link-used
            - shop-purchase
            - share-challenge-details
            - share-challenge-results
            - share-community
            - share-reward
            - share-post
            - share-profile
            - share-anything
            - streak-extended
            - profile-picture-added
            - bio-added
            - variable-captured
            - xp-gained
            - xp-total
            - xp-leaderboard-topper
        eventSourceId:
          type: string
          nullable: true
          pattern: ^[0-9a-fA-F]{24}$
        total:
          type: number
        knowledge:
          type: number
        creativity:
          type: number
        loyalty:
          type: number
        influence:
          type: number
        participation:
          type: number
        contribution:
          type: number
      required:
        - name
        - eventCategory
        - eventSubCategory
        - total
        - knowledge
        - creativity
        - loyalty
        - influence
        - participation
        - contribution
      title: Xp Gained Event
      description: An xp gained event
    EventOrganisationInviteUser:
      type: object
      properties:
        name:
          type: string
          enum:
            - organisation_invite-admin-user
        organisationId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
        email:
          type: string
        signInUrl:
          type: string
          format: uri
        organisationName:
          type: string
        language:
          type: string
        invitedBy:
          type: string
      required:
        - name
        - organisationId
        - email
        - signInUrl
        - organisationName
        - language
        - invitedBy
      title: Organisation Invite User Event
      description: An organisation invite user event
    EventAuthEmail:
      type: object
      properties:
        name:
          type: string
          enum:
            - auth_email
        email:
          type: string
        signInUrl:
          type: string
          format: uri
        organisationName:
          type: string
        logo:
          type: string
        language:
          type: string
      required:
        - name
        - email
        - signInUrl
        - organisationName
        - logo
        - language
      title: Auth Email Event
      description: An auth email event, typically a magic link
    EventPostLike:
      type: object
      properties:
        name:
          type: string
          enum:
            - post_post-like
        postId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
      required:
        - name
        - postId
      title: Post Like Event
      description: A post like event
    EventPostComment:
      type: object
      properties:
        name:
          type: string
          enum:
            - post_post-comment
        postId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
        commentId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
      required:
        - name
        - postId
        - commentId
      title: Post Comment Event
      description: A post comment event
    EventVariableCaptured:
      type: object
      properties:
        name:
          type: string
          enum:
            - variable_variable-captured
        variableConfigId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
        variableOutputId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
      required:
        - name
        - variableConfigId
        - variableOutputId
      title: Variable Captured Event
      description: A variable captured event
    EventStreakExtended:
      type: object
      properties:
        name:
          type: string
          enum:
            - streak_streak-extended
        achievementId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
        streakLength:
          type: integer
          minimum: 0
          exclusiveMinimum: true
      required:
        - name
        - achievementId
        - streakLength
      title: Streak Extended Event
      description: A streak extended event
    EventManualRewardDistribution:
      type: object
      properties:
        name:
          type: string
          enum:
            - reward_manual-distribution
        distributionEventId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
          description: >-
            The id of the distribution event that was used to distribute the
            rewards
        userIds:
          type: array
          items:
            type: string
            pattern: ^[0-9a-fA-F]{24}$
          description: The ids of the users that the reward was distributed to
        rewardIds:
          type: array
          items:
            type: string
            pattern: ^[0-9a-fA-F]{24}$
          description: The ids of the rewards that were distributed
        xpDistributed:
          type: number
          description: The amount of XP distributed to each user
        pointsDistributed:
          type: number
          description: The amount of points distributed to each user
        createdAt:
          type: string
          description: The date the distribution event was created
      required:
        - name
        - distributionEventId
        - userIds
        - rewardIds
        - xpDistributed
        - pointsDistributed
        - createdAt
      title: Manual Reward Distribution Event
      description: A manual reward distribution event
    EventLeaderboardFinish:
      type: object
      properties:
        name:
          type: string
          enum:
            - leaderboard_leaderboard-finish
        leaderboardConfigId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
          description: The id of the leaderboard config
        userId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
          description: The id of the user
        finishingRank:
          type: number
          minimum: 1
          description: The finishing rank of the user
        distributionEventId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
          description: The id of the distribution event
        points:
          type: number
          minimum: 0
          description: The number of points earned
        xp:
          type: number
          minimum: 0
          description: The amount of XP earned
        rewardAssets:
          type: array
          items:
            $ref: '#/components/schemas/EarnedRewardAssetReference'
        rewardEntries:
          type: array
          items:
            $ref: '#/components/schemas/EarnedRewardEntryReference'
        leaderboardStart:
          type: string
          description: >-
            The date the leaderboard started. Refers to the progress period that
            the user finished in.
        leaderboardEnd:
          type: string
          description: >-
            The date the leaderboard ended. Refers to the progress period that
            the user finished in.
      required:
        - name
        - leaderboardConfigId
        - userId
        - finishingRank
        - distributionEventId
        - points
        - xp
        - rewardAssets
        - rewardEntries
        - leaderboardStart
        - leaderboardEnd
      title: Leaderboard Finish Event
      description: >-
        Event that is logged when a user finishes a leaderboard and optionally
        wins prizes
    EventShopPurchase:
      type: object
      properties:
        name:
          type: string
          enum:
            - shop_shop-purchase
        user:
          $ref: '#/components/schemas/WebhookUser'
        totalPointsSpent:
          type: number
          minimum: 0
          description: The total number of points spent in this purchase
        purchasedReward:
          anyOf:
            - $ref: '#/components/schemas/AcquiredReward'
            - $ref: '#/components/schemas/AcquiredEntry'
          description: The purchased reward (either assets or entries)
        campaigns:
          type: array
          items:
            type: string
            pattern: ^[0-9a-fA-F]{24}$
          description: The campaigns that the purchased reward belongs to
        purchasedAt:
          type: string
          description: The date the purchase was completed
        createdAt:
          type: string
          description: The date the event was created
        updatedAt:
          type: string
          description: The date the event was last updated
      required:
        - name
        - user
        - totalPointsSpent
        - purchasedReward
        - campaigns
        - purchasedAt
        - createdAt
        - updatedAt
      title: Shop Purchase Event
      description: A shop purchase event
    Details:
      type: object
      properties:
        title:
          type: string
          description: The title of the entity
        description:
          type: string
          nullable: true
          description: The description of the entity
        light:
          type: object
          properties:
            primaryImageUrl:
              type: string
              nullable: true
              description: The url of the primary image for this theme mode
            secondaryImageUrl:
              type: string
              nullable: true
              description: The url of the secondary image for this theme mode
          required:
            - primaryImageUrl
            - secondaryImageUrl
          description: Light theme images
        dark:
          type: object
          properties:
            primaryImageUrl:
              type: string
              nullable: true
              description: The url of the primary image for this theme mode
            secondaryImageUrl:
              type: string
              nullable: true
              description: The url of the secondary image for this theme mode
          required:
            - primaryImageUrl
            - secondaryImageUrl
          description: Dark theme images
      required:
        - title
        - description
        - light
        - dark
      description: Used to describe an entity
      title: Details
    WebhookUser:
      type: object
      properties:
        id:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
          description: The id of the user
        email:
          type: string
          description: The email of the user
        externalUserId:
          type: string
          description: The external user id of the user
        locale:
          type: string
          description: The locale of the user
      required:
        - id
        - email
        - externalUserId
        - locale
      description: User information for webhook events
      title: Webhook User
    AcquiredReward:
      type: object
      properties:
        rewardId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
          description: The id of the reward
        quantity:
          type: integer
          minimum: 1
          description: The number of this reward that were acquired
        details:
          $ref: '#/components/schemas/Details'
        rewardAssetIds:
          type: array
          items:
            type: string
            pattern: ^[0-9a-fA-F]{24}$
          description: The ids of the reward assets created
        metadata:
          type: object
          additionalProperties:
            anyOf:
              - type: string
              - type: number
              - type: boolean
              - type: array
                items:
                  anyOf:
                    - type: string
                    - type: number
                    - type: boolean
          description: Additional metadata for the reward
      required:
        - rewardId
        - quantity
        - details
        - rewardAssetIds
        - metadata
      description: Represents an acquired reward
      title: Acquired Reward
    AcquiredEntry:
      type: object
      properties:
        rewardId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
          description: The id of the reward
        quantity:
          type: integer
          minimum: 1
          description: The number of entries for this reward that were acquired
        details:
          $ref: '#/components/schemas/Details'
        rewardEntryId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
          description: The id of the reward entry
      required:
        - rewardId
        - quantity
        - details
        - rewardEntryId
      description: Represents an acquired reward entry
      title: Acquired Entry
    EarnedRewardAssetReference:
      type: object
      properties:
        rewardAssetId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
        rewardId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
      required:
        - rewardAssetId
        - rewardId
      title: EarnedReward Asset Reference
      description: A reference to a reward asset won by a user
    EarnedRewardEntryReference:
      type: object
      properties:
        rewardEntryId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
        rewardId:
          type: string
          pattern: ^[0-9a-fA-F]{24}$
        amount:
          type: number
      required:
        - rewardEntryId
        - rewardId
        - amount
      title: EarnedReward Entry Reference
      description: A reference to reward entries won by a user
  securitySchemes:
    ApiToken:
      type: apiKey
      in: header
      name: x-api-token

````