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

# Accept Invitation

> Accepts a driver invitation.



## OpenAPI

````yaml /api-reference/driver/openapi.json post /api/v1/driver/invites/{token}/accept
openapi: 3.0.0
info:
  title: DEVMOB Driver API
  description: DEVMOB API
  version: '1.0'
  contact: {}
servers: []
security: []
tags:
  - name: Auth
    description: Authentication and token lifecycle
  - name: Invite
    description: Driver invitation preview and acceptance
  - name: Notification
    description: Driver inbox notifications
  - name: OTP
    description: One-time password flows
  - name: Profile
    description: Authenticated driver profile
  - name: Session
    description: Authenticated sessions
  - name: Storage
    description: Storage uploads
  - name: Trip
    description: Driver trips
  - name: Trip Boarding
    description: Ticket boarding
  - name: Trip Event
    description: Trip operational events
  - name: Trip Manifest
    description: Trip passenger manifest
  - name: Trip Tracking
    description: Driver GPS tracking
paths:
  /api/v1/driver/invites/{token}/accept:
    post:
      tags:
        - Invite
      summary: Accept Invitation
      description: Accepts a driver invitation.
      operationId: acceptDriverInvitation
      parameters:
        - name: token
          required: true
          in: path
          schema:
            type: string
            description: Invite token
            example: a1b2c3d4e5f6
        - name: fields
          required: false
          in: query
          description: >-
            Comma-separated list of fields to include in the response. Supports
            dot notation for nested projection (e.g.
            `id,name,user.email,trips.route.id`). Unknown fields are silently
            dropped.
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AcceptDriverInviteRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Invite'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '409':
          $ref: '#/components/responses/ConflictError'
        '422':
          $ref: '#/components/responses/UnprocessableEntityError'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  schemas:
    AcceptDriverInviteRequest:
      type: object
      properties:
        name:
          type: string
          description: Full name.
          example: Maria Silva
        password:
          type: string
          minLength: 8
          description: User password.
          example: P@ssw0rd!
        licenseNumber:
          type: string
          description: Driver license number.
          example: '12345678901'
        licenseCategory:
          type: string
          enum:
            - D
            - E
          description: Driver license category.
          example: D
        licenseExpiresAt:
          type: string
          format: date
          description: Driver license expiration date.
          example: '2028-12-31'
      required:
        - name
        - password
        - licenseNumber
        - licenseCategory
        - licenseExpiresAt
      description: Accept driver invitation payload.
    Invite:
      type: object
      properties:
        inviteId:
          type: string
          format: uuid
          description: Identificador único
        invitedByUserId:
          type: string
          format: uuid
          description: Usuário que emitiu ou originou o token
        invitedUserId:
          type: string
          format: uuid
          nullable: true
          description: Usuário convidado ou ativado
        organizationId:
          type: string
          format: uuid
          nullable: true
          description: >-
            Organização do convite — ausente em convites internos e ativações de
            conta
        roleId:
          type: string
          format: uuid
          nullable: true
          description: Role atribuída no aceite — usada apenas por MEMBER
        type:
          type: string
          enum:
            - MEMBER
            - DRIVER
            - ACCOUNT_ACTIVATION
          description: Tipo do token (MEMBER, DRIVER ou ACCOUNT_ACTIVATION)
        token:
          type: string
          description: Token único usado no link
        email:
          type: string
          nullable: true
          description: Email do convidado ou usuário ativado, quando informado
        phoneIso:
          type: string
          description: Código ISO do país do telefone (padrão BR)
        phoneDdi:
          type: string
          description: DDI do telefone
        phoneNumber:
          type: string
          description: Número do telefone
        expiresAt:
          type: string
          format: date-time
          description: Data de expiração do token
        acceptedAt:
          type: string
          format: date-time
          nullable: true
          description: Data em que o token foi aceito
        revokedAt:
          type: string
          format: date-time
          nullable: true
          description: Data de revogação
        rejectedAt:
          type: string
          format: date-time
          nullable: true
          description: Data de rejeição
        createdBy:
          type: string
          format: uuid
          nullable: true
          description: Usuário que criou o registro, quando aplicável
        updatedBy:
          type: string
          format: uuid
          nullable: true
          description: Usuário que fez a última atualização, quando aplicável
        createdAt:
          type: string
          format: date-time
          description: Data de criação
      required:
        - inviteId
        - invitedByUserId
        - invitedUserId
        - organizationId
        - roleId
        - type
        - token
        - email
        - phoneIso
        - phoneDdi
        - phoneNumber
        - expiresAt
        - acceptedAt
        - revokedAt
        - rejectedAt
        - createdBy
        - updatedBy
        - createdAt
      description: 'Tokens de convite e ativação: membro, motorista ou ativação de conta'
    ValidationError:
      type: object
      properties:
        statusCode:
          type: integer
          description: HTTP status code.
          example: 400
        message:
          type: string
          description: Error message.
          example: Bad Request Error
        errors:
          type: array
          items:
            type: object
            properties:
              code:
                type: string
                description: Validation code.
                example: invalid_type
              message:
                type: string
                description: Validation message.
                example: Required
              path:
                type: string
                description: Invalid field path.
                example: name
            required:
              - code
              - message
              - path
      required:
        - statusCode
        - message
        - errors
      description: Validation error response.
    ApiError:
      type: object
      properties:
        statusCode:
          type: integer
          description: HTTP status code.
          example: 404
        error:
          type: string
          description: HTTP error name.
          example: Not Found
        message:
          type: string
          description: Machine-readable error code.
          example: resource.not_found
      required:
        - statusCode
        - error
        - message
      description: Domain error response.
  responses:
    BadRequestError:
      description: Validation failed.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ValidationError'
    UnauthorizedError:
      description: Authentication required.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
    NotFoundError:
      description: Resource not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
    ConflictError:
      description: State conflict.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
    UnprocessableEntityError:
      description: Business rule violation.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
    InternalServerError:
      description: Internal server error.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'

````