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

# Register a user for event preregister

> Registers an attendee on the preregister list for the given event.

Requires API key capability `preregister:write` (or `all:write`). The event must belong to the API key organization.

Registration is only accepted when the event has an active preregister configuration, the event is still purchasable, and the preregister window is open. Use `GET /events/{id}` to inspect preregister settings and which fields are required.

Additional fields beyond `fullname` and `email` may be required depending on the event preregister configuration.



## OpenAPI

````yaml post /events/{id}/preregister
openapi: 3.0.0
info:
  title: Channel Manager API
  version: 0.1.0
  description: >-
    Official API documentation for Channel Manager. All endpoints are protected
    by an API key.
servers:
  - url: https://channels-service-alpha.fourvenues.com
    description: Test server
  - url: https://channels-service.fourvenues.com
    description: Production server
security: []
tags: []
paths:
  /events/{id}/preregister:
    post:
      tags:
        - Events
      summary: Register a user for event preregister
      description: >-
        Registers an attendee on the preregister list for the given event.


        Requires API key capability `preregister:write` (or `all:write`). The
        event must belong to the API key organization.


        Registration is only accepted when the event has an active preregister
        configuration, the event is still purchasable, and the preregister
        window is open. Use `GET /events/{id}` to inspect preregister settings
        and which fields are required.


        Additional fields beyond `fullname` and `email` may be required
        depending on the event preregister configuration.
      operationId: registerPreregister
      parameters:
        - name: id
          in: path
          description: The id of the event.
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RegisterPreregisterRequest'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/RegisterPreregisterResponse'
                  success:
                    type: boolean
                    example: true
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '429':
          description: Too Many Requests
      security:
        - ApiKey: []
components:
  schemas:
    RegisterPreregisterRequest:
      type: object
      description: Attendee data for preregister registration.
      required:
        - fullname
        - email
      properties:
        fullname:
          type: string
          maxLength: 255
          example: John Doe
          description: Full name of the attendee.
        email:
          type: string
          format: email
          maxLength: 255
          example: john@example.com
          description: Email address of the attendee.
        phone:
          type: string
          maxLength: 255
          example: '+34600000000'
          description: >-
            Phone number. May be required depending on the event preregister
            configuration.
        birthdate:
          type: string
          format: date
          example: '1990-01-01'
          description: Birth date in ISO 8601 format.
        gender:
          type: string
          enum:
            - '0'
            - '1'
            - '2'
          description: Gender code.
        country:
          type: string
          maxLength: 255
          example: Spain
        state:
          type: string
          maxLength: 255
          example: Madrid
        zipCode:
          type: string
          maxLength: 255
          example: '28001'
        personalDocument:
          type: string
          maxLength: 255
          example: 12345678A
        personalDocumentType:
          type: string
          enum:
            - dni
            - nie
            - passport
            - other
            - ''
          example: dni
        remarketing:
          type: boolean
          default: false
          description: Whether the attendee opts in to email remarketing.
        remarketing_sms:
          type: boolean
          default: false
          description: Whether the attendee opts in to SMS remarketing.
    RegisterPreregisterResponse:
      type: object
      properties:
        _id:
          type: string
          example: prereg-user-123
          description: Identifier of the created preregister registration.
      required:
        - _id
  securitySchemes:
    ApiKey:
      in: header
      name: X-Api-Key
      type: apiKey

````