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

# inserirUsuario

> Cria um novo usuário (agente, supervisor etc.).

Uma senha forte de 8 caracteres é gerada automaticamente e devolvida em texto plano na resposta. Ela não é enviada por e-mail nem por nenhum outro canal. O usuário é criado ativo e já com um ramal PJSIP, devolvido no campo `ramal`.

###### Regras:
- O `login` precisa ser único.
- O `cpf`, se informado, não pode estar em uso por outro usuário.
- O `email` é opcional para agentes e obrigatório para os demais tipos de usuário.
- Não é permitido criar um usuário do tipo root.

###### Retorna:
| Campo | Descrição |
|---|---|
| status | success |
| data.id | Id do usuário criado |
| data.login | Login do usuário |
| data.tipo | Tipo do usuário |
| data.ramal | Ramal PJSIP do usuário |
| data.senha | Senha gerada, em texto plano |

<Warning>
A senha só é devolvida nesta resposta e não pode ser consultada depois. Guarde-a ou repasse-a ao usuário com segurança. Se ela se perder, use o método `redefinirSenhaUsuario` (que precisa estar habilitado) ou peça ao suporte.
</Warning>



## OpenAPI

````yaml /openapi.yaml post /ipbox/api/inserirUsuario
openapi: 3.0.0
info:
  title: IPBoX Api Documentation v1.1
  description: >-
    Nesse documento são descritos os comandos presentes na API Rest do IPBoX. Os
    comandos são executados com chamadas POST e com respostas em formato JSON.
  version: 1.0.0
servers:
  - url: https://{baseUrl}
    description: Dominio (e porta, se houver) do servidor IPBoX do cliente
    variables:
      baseUrl:
        default: cliente.ipboxcloud.com.br:9052
        description: >-
          Substitua pelo dominio real do seu servidor IPBoX. A maioria dos
          servidores usa uma porta especifica - inclua-a junto ao dominio (ex.:
          cliente.ipboxcloud.com.br:9052)
security:
  - ApiToken: []
tags:
  - name: Agente
  - name: Ligações
  - name: Prospects
  - name: Agendamentos
  - name: Listas
  - name: Filas
  - name: Lotes
  - name: Relatórios
  - name: Outros
  - name: Times
  - name: Blacklist
  - name: Áudios
  - name: URAs
paths:
  /ipbox/api/inserirUsuario:
    post:
      tags:
        - Agente
      summary: inserirUsuario
      description: >-
        Cria um novo usuário (agente, supervisor etc.).


        Uma senha forte de 8 caracteres é gerada automaticamente e devolvida em
        texto plano na resposta. Ela não é enviada por e-mail nem por nenhum
        outro canal. O usuário é criado ativo e já com um ramal PJSIP, devolvido
        no campo `ramal`.


        ###### Regras:

        - O `login` precisa ser único.

        - O `cpf`, se informado, não pode estar em uso por outro usuário.

        - O `email` é opcional para agentes e obrigatório para os demais tipos
        de usuário.

        - Não é permitido criar um usuário do tipo root.


        ###### Retorna:

        | Campo | Descrição |

        |---|---|

        | status | success |

        | data.id | Id do usuário criado |

        | data.login | Login do usuário |

        | data.tipo | Tipo do usuário |

        | data.ramal | Ramal PJSIP do usuário |

        | data.senha | Senha gerada, em texto plano |


        <Warning>

        A senha só é devolvida nesta resposta e não pode ser consultada depois.
        Guarde-a ou repasse-a ao usuário com segurança. Se ela se perder, use o
        método `redefinirSenhaUsuario` (que precisa estar habilitado) ou peça ao
        suporte.

        </Warning>
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                usuario:
                  type: string
                  description: Login do novo usuário
                  example: agente08
                tipo:
                  type: string
                  description: >-
                    Id ou descrição do tipo de usuário (por exemplo, o tipo
                    agente)
                  example: agente
                email:
                  type: string
                  description: >-
                    [Opcional para agentes] E-mail do usuário. Obrigatório para
                    os demais tipos.
                  example: agente08@empresa.com.br
                cpf:
                  type: string
                  description: '[Opcional] CPF do usuário'
                  example: ''
                dataNascimento:
                  type: string
                  description: '[Opcional] Data de nascimento no formato dd/mm/aaaa'
                  example: 15/03/1990
                nivelAcesso:
                  type: string
                  description: >-
                    [Opcional] Nível de acesso aos formulários, de 1 a 6. Se não
                    informado, vale o nível do tipo de usuário.
                  example: '1'
              required:
                - usuario
                - tipo
      responses:
        '200':
          description: Usuário criado com sucesso.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: success
                  data:
                    type: object
                    properties:
                      id:
                        type: integer
                      login:
                        type: string
                      tipo:
                        type: string
                      ramal:
                        type: string
                        description: Ramal PJSIP do usuário
                      senha:
                        type: string
                        description: Senha gerada, em texto plano.
              example:
                status: success
                data:
                  id: 188
                  login: agente08
                  tipo: agente
                  ramal: '6138'
                  senha: '47829356'
        '409':
          description: Não foi possível processar a requisição.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                usuarioNaoInformado:
                  summary: Usuário não informado
                  value:
                    errors:
                      - status: 409
                        title: Usuário não informado
                        detail: O usuário não foi informado
                tipoNaoInformado:
                  summary: Parâmetro inválido
                  value:
                    errors:
                      - status: 409
                        title: Parâmetro inválido
                        detail: Tipo de usuario nao informado
                tipoNaoEncontrado:
                  summary: Parâmetro inválido
                  value:
                    errors:
                      - status: 409
                        title: Parâmetro inválido
                        detail: Tipo de usuario nao encontrado
                roleRootNaoPermitido:
                  summary: Parâmetro inválido
                  value:
                    errors:
                      - status: 409
                        title: Parâmetro inválido
                        detail: Nao e permitido atribuir o tipo de usuario root
                nivelAcessoInvalido:
                  summary: Parâmetro inválido
                  value:
                    errors:
                      - status: 409
                        title: Parâmetro inválido
                        detail: nivelAcesso deve ser um valor de 1 a 6
                validacao:
                  summary: Parâmetro inválido
                  value:
                    errors:
                      - status: 409
                        title: Parâmetro inválido
                        detail: Este login ja esta em uso
                exception:
                  summary: Erro
                  value:
                    errors:
                      - status: 409
                        title: Erro
                        detail: (mensagem dinâmica, varia conforme o erro encontrado)
components:
  schemas:
    ApiError:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              status:
                type: integer
                example: 409
              title:
                type: string
              detail:
                type: string
  securitySchemes:
    ApiToken:
      type: apiKey
      in: header
      name: Authorization
      description: >-
        Token gerado em IPBoX > API > Token. Aceita o token puro, ou com prefixo
        `Bearer ` / `Basic `.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.