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

# Initiate registration

> Start user registration process



## OpenAPI

````yaml post /v1/users/initiate-registration
openapi: 3.0.0
info:
  title: Users API
  version: 1.0.0
  description: API for user management and authentication
servers: []
security:
  - bearerAuth: []
tags:
  - name: Registration
    description: User registration operations
  - name: Users
    description: User management operations
  - name: Credentials
    description: Credential management operations
  - name: Password
    description: Password management operations
paths:
  /v1/users/initiate-registration:
    post:
      tags:
        - Registration
      summary: Initiate registration
      description: Start user registration process
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InitiateRegistrationRequest'
      responses:
        '200':
          description: Registration initiated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InitiateRegistrationResponse'
        '400':
          $ref: '#/components/responses/ValidationError'
components:
  schemas:
    InitiateRegistrationRequest:
      type: object
      required:
        - credential_type
        - credential_value
        - password
        - terms_accepted
        - privacy_policy_accepted
      properties:
        credential_type:
          type: string
          enum:
            - email
            - phone
        credential_value:
          type: string
        password:
          type: string
        terms_accepted:
          type: boolean
        privacy_policy_accepted:
          type: boolean
    InitiateRegistrationResponse:
      type: object
      properties:
        message:
          type: string
        user_id:
          type: string
          format: uuid
    Error:
      type: object
      required:
        - code
        - message
      properties:
        code:
          type: string
        message:
          type: string
  responses:
    ValidationError:
      description: Invalid input data
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            code: users.invalid_user_input
            message: Invalid user input data
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````