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

# Register app user

> Registers a new `APP` type user with a phone number, password, and full name after validating an SMS code. Returns an access token for the registered app user.



## OpenAPI

````yaml api-reference/openapi.json post /register-appuser
openapi: 3.0.0
info:
  title: Cati Main Server API
  version: 1.0.0
  description: >-
    API for managing Cati assistant users, app users, contacts, media,
    notifications and preferences.
servers:
  - url: /
security: []
paths:
  /register-appuser:
    post:
      tags:
        - Authentication & Users
      summary: Register a new Mobile App User
      description: >-
        Registers a new `APP` type user with a phone number, password, and full
        name after validating an SMS code. Returns an access token for the
        registered app user.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AppUserRegistrationRequest'
      responses:
        '200':
          description: App user registered successfully with access token.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppUserRegistrationResponse'
        '400':
          description: Invalid SMS code or missing fields.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Database or server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    AppUserRegistrationRequest:
      type: object
      required:
        - phone
        - code
        - password
        - full_name
      properties:
        phone:
          type: string
          example: '+34612345678'
        code:
          type: string
          description: SMS verification code.
          example: '123456'
        password:
          type: string
          format: password
          example: mySecurePassword123
        full_name:
          type: string
          example: App User
    AppUserRegistrationResponse:
      allOf:
        - $ref: '#/components/schemas/SuccessResponse'
        - type: object
          properties:
            access_token:
              type: string
              description: JWT Access Token for the registered app user.
              example: eyJ...
    ErrorResponse:
      type: object
      properties:
        status:
          type: string
          example: error
        message:
          type: string
          example: Database connection failed
    SuccessResponse:
      type: object
      properties:
        status:
          type: string
          example: success
        message:
          type: string
          example: Operation completed successfully

````