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

# Criar usuário

> Cria operador no escritório com papel, senha e vínculo a uma ou mais inboxes. Conflito de e-mail: 409.



## OpenAPI

````yaml https://api.jurichat.com/docs/client/openapi.json post /user/
openapi: 3.1.0
info:
  title: JuriChat API — Documentação para Integradores
  description: ''
  version: 1.0.0
servers:
  - url: https://api.jurichat.com
    description: Production server
security:
  - apiKeyAuth: []
tags: []
paths:
  /user/:
    post:
      tags:
        - Users
      summary: Criar usuário
      description: >-
        Cria operador no escritório com papel, senha e vínculo a uma ou mais
        inboxes. Conflito de e-mail: 409.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  description: Nome completo do usuário.
                email:
                  type: string
                  format: email
                  description: E-mail de acesso (único no escritório).
                password:
                  type: string
                  minLength: 6
                  description: Senha de acesso. Mínimo de 6 caracteres.
                contact:
                  type: string
                  default: ''
                  description: Telefone ou WhatsApp do usuário. Opcional.
                imageUrl:
                  type: string
                  description: URL de avatar. Opcional.
                notificationSound:
                  type: string
                  default: tick.mp3
                  description: 'Arquivo de som para notificações. Padrão: `tick.mp3`.'
                officeId:
                  type: string
                  pattern: ^[cC][^\s-]{8,}$
                  description: ID do escritório ao qual o usuário pertence.
                roleId:
                  type: string
                  pattern: ^[cC][^\s-]{8,}$
                  description: ID do papel inicial do usuário.
                inboxId:
                  type: array
                  items:
                    type: string
                    pattern: ^[cC][^\s-]{8,}$
                  description: IDs das inboxes às quais o usuário terá acesso.
                departmentIds:
                  type: array
                  items:
                    type: string
                    pattern: ^[cC][^\s-]{8,}$
                  nullable: true
                  description: >-
                    IDs dos departamentos do usuário. `null` ou `[]` deixa o
                    usuário sem departamentos; ausente não altera. Requer
                    permissão `view:teams`.
                onlyAssignedConversations:
                  type: boolean
                  default: false
                  description: >-
                    Quando verdadeiro, o usuário visualiza apenas conversas
                    atribuídas a ele. Padrão: false.
              required:
                - name
                - email
                - password
                - officeId
                - roleId
                - inboxId
              additionalProperties: false
        required: true
      responses:
        '201':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    pattern: ^[cC][^\s-]{8,}$
                    description: ID do usuário criado.
                  name:
                    type: string
                    description: Nome do usuário.
                  email:
                    type: string
                    description: E-mail de acesso.
                  contact:
                    type: string
                    description: Telefone ou WhatsApp cadastrado.
                  imageUrl:
                    type: string
                    nullable: true
                    description: URL de avatar. Null se não definido.
                  notificationSound:
                    type: string
                    description: Arquivo de som de notificação.
                  officeId:
                    type: string
                    description: ID do escritório ao qual o usuário pertence.
                  roleId:
                    type: string
                    description: ID do papel atribuído ao usuário.
                  inboxes:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: ID da inbox.
                        name:
                          type: string
                          description: Nome da inbox.
                      required:
                        - id
                        - name
                      additionalProperties: false
                    description: Inboxes associadas ao usuário no momento da criação.
                  departments:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: ID do departamento.
                        name:
                          type: string
                          description: Nome do departamento.
                      required:
                        - id
                        - name
                      additionalProperties: false
                    description: Departamentos associados ao usuário no momento da criação.
                  lastInboxUsed:
                    type: string
                    nullable: true
                    description: ID da última inbox utilizada. Null se não houver.
                  onlyAssignedConversations:
                    type: boolean
                    description: >-
                      Indica se o usuário visualiza apenas conversas atribuídas
                      a ele.
                  createdAt:
                    type: string
                    format: date-time
                    description: Data e hora de criação.
                required:
                  - id
                  - name
                  - email
                  - contact
                  - imageUrl
                  - notificationSound
                  - officeId
                  - roleId
                  - inboxes
                  - departments
                  - lastInboxUsed
                  - onlyAssignedConversations
                  - createdAt
                additionalProperties: false
        '400':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                  statusCode:
                    type: number
                  details: {}
                required:
                  - message
                  - statusCode
                additionalProperties: false
        '409':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                  statusCode:
                    type: number
                  details: {}
                required:
                  - message
                  - statusCode
                additionalProperties: false
      security:
        - apiKeyAuth: []
components:
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-jurichat-api-key
      description: >-
        Chave de API do escritório (criada no painel). Envie o valor no header
        x-jurichat-api-key.

````