EventX Attendee API

The Attendee API from EventX — 9 operation(s) for attendee.

Operations 10

GET /public-api/v1/event/{eventId}/attendee List attendees for an event #
PUT /public-api/v1/event/{eventId}/attendee/bulk-upsert Bulk create or update attendees #
DELETE /public-api/v1/event/{eventId}/attendee/bulk-remove Remove attendees from an event #
DELETE /public-api/v1/event/{eventId}/attendee/bulk-delete Permanently delete attendees #
GET /public-api/v1/event/{eventId}/attendee/{attendeeId} Get an attendee by ID #
PATCH /public-api/v1/event/{eventId}/attendee/{attendeeId} Partially update an attendee #
PATCH /public-api/v1/event/{eventId}/attendee/{attendeeId}/attendee-ticket Change an attendee ticket class and add-ons #
GET /public-api/v1/event/{eventId}/attendee/qr-code-token/{qrCodeToken} Look up an attendee by QR code token #
GET /public-api/v1/event/{eventId}/attendee/short-code/{shortCode} Look up an attendee by short code #
GET /public-api/v1/event/{eventId}/attendee-tag/all List all attendee tags for an event #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/eventxtra-attendee-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

eventxtra-attendee-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Public Attendee API
  version: beta
  description: 'Response bodies vary by endpoint and may return `{ data }`, `{ dataList }`, `{ dataList, pagination }`, or no body for status-only operations. Successful responses use the HTTP status defined on each operation. Error responses return `{ error: { code, message, status, meta } }` with the corresponding HTTP status code.'
servers:
- url: https://esaas-api.eventx.io
tags:
- name: Attendee
paths:
  /public-api/v1/event/{eventId}/attendee:
    get:
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  dataList:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          format: uuid
                        name:
                          type: string
                          nullable: true
                        firstName:
                          type: string
                          nullable: true
                        lastName:
                          type: string
                          nullable: true
                        invitationEmail:
                          type: string
                          nullable: true
                        jobTitle:
                          type: string
                          nullable: true
                        organization:
                          type: string
                          nullable: true
                        city:
                          type: string
                          nullable: true
                        country:
                          type: string
                          nullable: true
                        areaCode:
                          type: string
                          nullable: true
                        contactNo:
                          type: string
                          nullable: true
                        customCheckInToken:
                          type: string
                          nullable: true
                        qrCodeToken:
                          type: string
                          nullable: true
                        registerUtmParams:
                          type: object
                          properties:
                            utm_source:
                              type: string
                            utm_medium:
                              type: string
                            utm_campaign:
                              type: string
                            utm_term:
                              type: string
                            utm_content:
                              type: string
                          additionalProperties: false
                        roleTags:
                          type: array
                          items:
                            type: string
                            enum:
                            - organizer
                            - host
                            - speaker
                            - exhibitor
                            - booth-rep
                            - visitor
                            - system
                        status:
                          type: string
                          enum:
                          - invited
                          - registered
                          - attended
                          - magic-link
                        registrationStatus:
                          type: string
                          enum:
                          - pending
                          - registered
                          - not-applicable
                        firstEnteredWebAppAt:
                          type: string
                          format: date-time
                          nullable: true
                        createdAt:
                          type: string
                          format: date-time
                        updatedAt:
                          type: string
                          format: date-time
                        registeredAt:
                          type: string
                          format: date-time
                          nullable: true
                        attendedAt:
                          type: string
                          format: date-time
                          nullable: true
                        checkInMethod:
                          type: string
                          enum:
                          - walk_in
                          - check_in
                          - qr_code
                          - search
                          nullable: true
                        checkedInAt:
                          type: string
                          format: date-time
                          nullable: true
                        approvalStatus:
                          type: string
                          enum:
                          - waitlisted
                          - approved
                          - rejected
                          nullable: true
                        approvedAt:
                          type: string
                          format: date-time
                          nullable: true
                        rejectedAt:
                          type: string
                          format: date-time
                          nullable: true
                        magicLinkUrl:
                          type: string
                          nullable: true
                        qrCodeLinkUrl:
                          type: string
                          nullable: true
                        ticketClassId:
                          type: string
                          format: uuid
                          nullable: true
                        addOns:
                          type: array
                          items:
                            type: object
                            properties:
                              ticketClassAddOnId:
                                type: string
                                format: uuid
                              qty:
                                type: integer
                            additionalProperties: false
                        attendeeTagIdList:
                          type: array
                          items:
                            type: string
                            format: uuid
                        customFields:
                          type: object
                          properties: {}
                          additionalProperties:
                            type: object
                            properties:
                              value:
                                anyOf:
                                - type: string
                                  nullable: true
                                - type: array
                                  items:
                                    type: string
                                    nullable: true
                                - type: boolean
                              mediaValues:
                                type: array
                                items:
                                  anyOf:
                                  - type: object
                                    properties:
                                      id:
                                        type: string
                                        format: uuid
                                      originalFilename:
                                        type: string
                                      originalFilepath:
                                        type: string
                                      mimeType:
                                        type: string
                                      type:
                                        type: string
                                        enum:
                                        - image
                                        - video
                                        - file
                                      size:
                                        type: number
                                        format: float
                                    required:
                                    - id
                                    - originalFilename
                                    - originalFilepath
                                    - mimeType
                                    - size
                                    additionalProperties: false
                                  - type: object
                                    properties:
                                      id:
                                        type: string
                                        format: uuid
                                      originalFilename:
                                        type: string
                                      originalFilepath:
                                        type: string
                                      mimeType:
                                        type: string
                                      type:
                                        type: string
                                        enum:
                                        - image
                                        - video
                                        - file
                                      cloudflarePlaybackUrl:
                                        type: string
                                        nullable: true
                                      size:
                                        type: number
                                        format: float
                                    required:
                                    - id
                                    - originalFilename
                                    - originalFilepath
                                    - mimeType
                                    - size
                                    additionalProperties: false
                                  - type: object
                                    properties:
                                      id:
                                        type: string
                                        format: uuid
                                      originalFilename:
                                        type: string
                                      previewFilename:
                                        type: string
                                      originalFilepath:
                                        type: string
                                      previewFilepath:
                                        type: string
                                      mimeType:
                                        type: string
                                      type:
                                        type: string
                                        enum:
                                        - image
                                        - video
                                        - file
                                      size:
                                        type: number
                                        format: float
                                    required:
                                    - id
                                    - originalFilename
                                    - previewFilename
                                    - originalFilepath
                                    - previewFilepath
                                    - mimeType
                                    - size
                                    additionalProperties: false
                            additionalProperties: false
                          description: 'Map of custom question IDs to their values. Each key is the custom question ID. The `value` field type depends on the question type: a string for text questions, an array of choice IDs for multiple-choice questions, or a boolean for yes/no questions. The `mediaValues` array contains full media response objects (image, file, or video) when media is attached to the field, or an empty array otherwise.'
                          example:
                            questionIdString:
                              value: Some text answer
                              mediaValues: []
                            questionIdMc:
                              value:
                              - choice-id-1
                              - choice-id-2
                              mediaValues: []
                            questionIdMedia:
                              value: null
                              mediaValues:
                              - id: 123e4567-e89b-12d3-a456-426614174000
                                originalFilename: photo.jpg
                                previewFilename: photo-preview.jpg
                                originalFilepath: /uploads/photo.jpg
                                previewFilepath: /uploads/photo-preview.jpg
                                mimeType: image/jpeg
                                type: image
                                size: 1024000
                        rawData:
                          type: object
                          properties:
                            name:
                              type: string
                              nullable: true
                            firstName:
                              type: string
                              nullable: true
                            lastName:
                              type: string
                              nullable: true
                            invitationEmail:
                              type: string
                              nullable: true
                            jobTitle:
                              type: string
                              nullable: true
                            organization:
                              type: string
                              nullable: true
                            city:
                              type: string
                              nullable: true
                            country:
                              type: string
                              nullable: true
                            areaCode:
                              type: string
                              nullable: true
                            contactNo:
                              type: string
                              nullable: true
                            customCheckInToken:
                              type: string
                              nullable: true
                            customFields:
                              type: object
                              properties: {}
                              additionalProperties:
                                type: object
                                properties:
                                  value:
                                    anyOf:
                                    - type: string
                                      nullable: true
                                    - type: array
                                      items:
                                        type: string
                                        nullable: true
                                    - type: boolean
                                  mediaValues:
                                    type: array
                                    items:
                                      type: string
                                      format: uuid
                                additionalProperties: false
                              description: Only support update with exist (active / archived) custom questions in question library
                            approvalStatus:
                              type: string
                              enum:
                              - waitlisted
                              - approved
                              - rejected
                            qrCodeToken:
                              type: string
                              nullable: true
                            registrationStatus:
                              type: string
                              enum:
                              - pending
                              - registered
                              - not-applicable
                            registerUtmParams:
                              type: object
                              properties:
                                utm_source:
                                  type: string
                                utm_medium:
                                  type: string
                                utm_campaign:
                                  type: string
                                utm_term:
                                  type: string
                                utm_content:
                                  type: string
                              additionalProperties: false
                          additionalProperties: false
                          description: Attendee profile fields that can be created or updated via the API
                          example:
                            firstName: John
                            lastName: Doe
                            name: John Doe
                            invitationEmail: john@example.com
                            jobTitle: Engineer
                            organization: Acme Inc
                            city: Hong Kong
                            country: HK
                            areaCode: '852'
                            contactNo: '98765432'
                            customFields: {}
                            registrationStatus: REGISTERED
                        rsvpStatus:
                          type: string
                          enum:
                          - pending
                          - invited
                          - registered
                          - rejected
                          - not-applicable
                          nullable: true
                        orderId:
                          type: string
                          format: uuid
                          nullable: true
                      additionalProperties: false
                      description: Full attendee response object returned by all attendee endpoints
                      examples:
                      - firstName: John
                        lastName: Doe
                        name: John Doe
                        invitationEmail: john@example.com
                        jobTitle: Engineer
                        organization: Acme Inc
                        city: Hong Kong
                        country: HK
                        areaCode: '852'
                        contactNo: '98765432'
                        customFields: {}
                        registrationStatus: REGISTERED
                      - id: 550e8400-e29b-41d4-a716-446655440000
                        name: John Doe
                        firstName: John
                        lastName: Doe
                        invitationEmail: john@example.com
                        jobTitle: Engineer
                        organization: Acme Inc
                        city: Hong Kong
                        country: HK
                        areaCode: '852'
                        contactNo: '98765432'
                        customFields: {}
                        roleTags:
                        - ATTENDEE
                        status: registered
                        registrationStatus: REGISTERED
                        createdAt: '2024-01-01T00:00:00.000Z'
                        updatedAt: '2024-01-01T00:00:00.000Z'
                        registeredAt: '2024-01-01T00:00:00.000Z'
                        attendedAt: null
                        checkInMethod: null
                        checkedInAt: null
                        approvalStatus: null
                        approvedAt: null
                        rejectedAt: null
                        firstEnteredWebAppAt: null
                        magicLinkUrl: null
                        qrCodeLinkUrl: null
                        ticketClassId: 550e8400-e29b-41d4-a716-446655440001
                        addOns: []
                        attendeeTagIdList: []
                        rsvpStatus: null
                        orderId: 550e8400-e29b-41d4-a716-446655440002
                        customCheckInToken: null
                        qrCodeToken: null
                        registerUtmParams: {}
                  pagination:
                    type: object
                    properties:
                      page:
                        type: number
                        format: float
                        description: Current page number
                      pageSize:
                        type: number
                        format: float
                        description: Number of items per page
                      pageCount:
                        type: number
                        format: float
                        description: Total number of pages
                      totalCount:
                        type: number
                        format: float
                        description: Total number of items
                    required:
                    - page
                    - pageSize
                    - pageCount
                    - totalCount
                    additionalProperties: false
                required:
                - dataList
                - pagination
                additionalProperties: false
        '500':
          description: ERROR
      parameters:
      - name: page
        in: query
        schema:
          type: number
          format: float
          minimum: 1
          default: 1
      - description: 'Optional inclusive ending page for requesting a range of pages. Maximum page range: 200.'
        name: pageEnd
        in: query
        schema:
          type: number
          format: float
          minimum: 0
          maximum: 0
      - name: pageSize
        in: query
        schema:
          type: number
          format: float
          minimum: 1
          maximum: 100
          default: 25
      - description: 'Multiple Sort syntax "-" DESC, Empty for ASC, Available sorts: id, name, firstName, lastName, createdAt, updatedAt, registeredAt, areaCode, contactNo, email, jobTitle, organization, city, country, suspendStatus, registrationStatus, attendedAt, approvalStatus, approvedAt, rejectedAt, attendee_tag_id'
        example: -sorterA,sorterB
        name: sort
        in: query
        schema:
          type: string
          default: -id
      - description: JSON array of attendee UUIDs to filter by
        example: '["550e8400-e29b-41d4-a716-446655440000"]'
        name: attendeeIds
        in: query
        schema:
          type: string
      - description: Filter attendees created after this ISO 8601 datetime
        example: '2024-01-01T00:00:00.000Z'
        name: createdAt$gt
        in: query
        schema:
          type: string
          format: date-time
      - description: JSON object of custom field question IDs to values for exact-match filtering
        example: '{"question-uuid": "value"}'
        name: customFields
        in: query
        schema:
          type: string
      - description: Free-text search across attendee name and email fields
        example: John
        name: q
        in: query
        schema:
          type: string
      - description: JSON object of custom field question IDs to text search terms (only text/textarea type questions supported)
        example: '{"question-uuid": "search term"}'
        name: customFieldSearch
        in: query
        schema:
          type: string
      - name: eventId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      security:
      - bearerAuth: []
      tags:
      - Attendee
      operationId: getPaginatedAttendeeByEventId
      summary: List attendees for an event
  /public-api/v1/event/{eventId}/attendee/bulk-upsert:
    put:
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  dataList:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          format: uuid
                        name:
                          type: string
                          nullable: true
                        firstName:
                          type: string
                          nullable: true
                        lastName:
                          type: string
                          nullable: true
                        invitationEmail:
                          type: string
                          nullable: true
                        jobTitle:
                          type: string
                          nullable: true
                        organization:
                          type: string
                          nullable: true
                        city:
                          type: string
                          nullable: true
                        country:
                          type: string
                          nullable: true
                        areaCode:
                          type: string
                          nullable: true
                        contactNo:
                          type: string
                          nullable: true
                        customCheckInToken:
                          type: string
                          nullable: true
                        qrCodeToken:
                          type: string
                          nullable: true
                        registerUtmParams:
                          type: object
                          properties:
                            utm_source:
                              type: string
                            utm_medium:
                              type: string
                            utm_campaign:
                              type: string
                            utm_term:
                              type: string
                            utm_content:
                              type: string
                          additionalProperties: false
                        roleTags:
                          type: array
                          items:
                            type: string
                            enum:
                            - organizer
                            - host
                            - speaker
                            - exhibitor
                            - booth-rep
                            - visitor
                            - system
                        status:
                          type: string
                          enum:
                          - invited
                          - registered
                          - attended
                          - magic-link
                        registrationStatus:
                          type: string
                          enum:
                          - pending
                          - registered
                          - not-applicable
                        firstEnteredWebAppAt:
                          type: string
                          format: date-time
                          nullable: true
                        createdAt:
                          type: string
                          format: date-time
                        updatedAt:
                          type: string
                          format: date-time
                        registeredAt:
                          type: string
                          format: date-time
                          nullable: true
                        attendedAt:
                          type: string
                          format: date-time
                          nullable: true
                        checkInMethod:
                          type: string
                          enum:
                          - walk_in
                          - check_in
                          - qr_code
                          - search
                          nullable: true
                        checkedInAt:
                          type: string
                          format: date-time
                          nullable: true
                        approvalStatus:
                          type: string
                          enum:
                          - waitlisted
                          - approved
                          - rejected
                          nullable: true
                        approvedAt:
                          type: string
                          format: date-time
                          nullable: true
                        rejectedAt:
                          type: string
                          format: date-time
                          nullable: true
                        magicLinkUrl:
                          type: string
                          nullable: true
                        qrCodeLinkUrl:
                          type: string
                          nullable: true
                        ticketClassId:
                          type: string
                          format: uuid
                          nullable: true
                        addOns:
                          type: array
                          items:
                            type: object
                            properties:
                              ticketClassAddOnId:
                                type: string
                                format: uuid
                              qty:
                                type: integer
                            additionalProperties: false
                        attendeeTagIdList:
                          type: array
                          items:
                            type: string
                            format: uuid
                        customFields:
                          type: object
                          properties: {}
                          additionalProperties:
                            type: object
                            properties:
                              value:
                                anyOf:
                                - type: string
                                  nullable: true
                                - type: array
                                  items:
                                    type: string
                                    nullable: true
                                - type: boolean
                              mediaValues:
                                type: array
                                items:
                                  anyOf:
                                  - type: object
                                    properties:
                                      id:
                                        type: string
                                        format: uuid
                                      originalFilename:
                                        type: string
                                      originalFilepath:
                                        type: string
                                      mimeType:
                                        type: string
                                      type:
                                        type: string
                                        enum:
                                        - image
                                        - video
                                        - file
                                      size:
                                        type: number
            

# --- truncated at 32 KB (134 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/eventxtra/refs/heads/main/openapi/eventxtra-attendee-api-openapi.yml