For the complete documentation index, see llms.txt. This page is also available as Markdown.

Criar ou atualizar dados de pessoas

Como cadastrar pessoas no Zeev utilizando API?

Para preparar uma requisição de cadastro de usuários ao Zeev, siga estes passos:

  1. Autenticação: Primeiro obtenha um token de autenticação com permissão de realizar essa operação;

  2. Dados de cadastro: Obtenha os dados necessários para os campos obrigatórios conforme explicado em Parâmetros obrigatórios e se desejar complementar o cadastro confira os demais parâmetros em Criar ou atualizar dados de pessoas;

  3. Enviar a Requisição: Utilize o endpoint Criar ou atualizar dados de pessoas para enviar a requisição conforme modelo e exemplo (troque seu_endereco.do.zeev pelo endereço que você usa para acessar o Zeev);

Parâmetros obrigatórios

Para esta requisição é obrigatório informar no corpo as propriedades username, name, email e licenseType, confira um modelo simples para esta requisição:

{
     "name":"Alan Cooper",
     "username":"alan.cooper",
     "email":"alan.cooper@zeev.it",
     "licenseType":"actor"
}

Parâmetro ifExists

Na raiz da estrutura do corpo de requisição, o parâmetro ifExists indica o que deve ser feito se o username (login) da pessoa já existir no cadastro, confira abaixo as opções disponíveis:

  • block: caso o username já exista, o retorno será um erro e a operação será bloqueada. Se a propriedade não for informada no corpo da requisição, este é o comportamento padrão adotado;

  • retrieve: Se este valor for preenchido na propriedade ifExistis na estrutura raiz do corpo da requisição, caso o username já exista, o retorno serão os dados da pessoa existente;

  • update: Se este valor for preenchido na propriedade ifExistis na estrutura raiz do corpo da requisição, caso o username já exista, os dados da pessoa existente serão atualizados.

Parâmetro authenticationType

Na raiz da estrutura do corpo de requisição, o parâmetro authenticationType indica qual o tipo de autenticação será definido para a pessoa. As opções atualmente disponíveis são:

  • default: Será usado o padrão do sistema para autenticação (opção utilizada se o parâmetro não for informado no corpo da requisição;

  • internal: Será criada uma senha temporária e armazenada no sistema;

  • network: A pessoa autenticará através da rede / active directory / LDAP;

  • ssoonly: A pessoa autenticará através de SSO somente;

Entenda mais sobre tipos de autenticação em Definir formas de autenticação

Modelo de corpo de requisição para criar usuários no Zeev

Como indicar times e funções da pessoa ao realizar o cadastro via API?

Ao realizar o cadastro de pessoas utilizando API, é possível informar os times e funções da pessoa na propriedade positions. Para indicar time e posição, é obrigatório informar também a propriedade ifExistsUser neste nível ( esta opção é diferente de ifExists informada na raiz do corpo de requisição) e um array de itens que indicam os times e funções da pessoa. As opções disponíveis para a propriedade positions.ifExistsUser são:

  • append: caso o username já exista, os times e funções que a pessoa não possuir serão acrescentados;

  • donothing: caso o username já exista, nada será modificado ou acrescentado na lista de times e funções;

  • replace: caso o username já exista, os times e funções já existentes serão excluídos e substituídos pelos enviados no modelo;

Obs: No array de itens, se informado teamId, não precisa ser informado temCode e o mesmo para postionId e positionCode.

Exemplo:

Como indicar o grupos de permissão ao cadastrar pessoas utilizando API?

Ao realizar o cadastro de pessoas utilizando API, é possível informar os grupos de acesso da pessoa na propriedade groups. Para indicar os grupos, é obrigatório informar também a propriedade ifExistsUser neste nível ( esta opção é diferente de ifExistsUser informada dentro da estrutura positions do corpo de requisição) e um array de itens que indicam os times e funções da pessoa. As opções disponíveis para a propriedade groups.ifExistsUser são:

  • append: caso o username já exista, os grupos de manutenção que a pessoa não possuir serão acrescentados

  • donothing: caso o username já exista, nada será modificado ou acrescentado na lista de grupos de manutenção

  • replace: caso o username já exista, os grupos de manutenção já existentes serão excluídos e substituídos pelos enviados no modelo

Obs: No array de itens, apenas uma das propriedades é obrigatória entre groupId e groupCode.

Exemplo:

Cadastrar uma pessoa, com grupos de manutenção, times e funções relacionados (Auth)

post
Autorizações
AuthorizationstringObrigatório

Utilize um token válido de usuário para realizar a requisição

Corpo
ifExistsstringObrigatório

Indicativo da operação a realizar se o login já existe

usernamestringObrigatório

Login ou e-mail de autenticação da pessoa

namestringObrigatório

Nome da pessoa

emailstringObrigatório

E-mail para recebimento de notificações

identificationstringOpcional

Número de documento ou identificação

documentstringOpcional

Número de CPF (11 dígitos numéricos) ou CNPJ (14 caracteres: 12 alfanuméricos + 2 numéricos)

isActivebooleanOpcional

Indicador se a pessoa está ativa

authenticationTypestringOpcional

Indicador do tipo de autenticação da pessoa

licenseTypestringObrigatório

Indicador do tipo de licenciamento a ser usado para a pessoa

timeZoneinteger · int32Opcional

Identificador do fuso horário

businessShiftIdinteger · int32Opcional

Turno de trabalho da pessoa

leadershipIdinteger · int32Opcional

Identificador único do gestor imediato da pessoa

countryIdinteger · int32Opcional

Identificador único do país

stateIdinteger · int32Opcional

Identificador único do estado

cityIdinteger · int32Opcional

Identificador único da cidade

Respostas
200

Sucesso.

actionstringOpcional

Resultado da operação: Retrieved = Cadastro da pessoa já existia e o ID foi retornado | Update = Cadastro da pessoa já existia e foi atualizado | Created = Cadastro da pessoa foi criado | Error = A operação falhou

idinteger · int32Opcional

Identificador da pessoa

usernamestringOpcional

Login da pessoa

namestringOpcional

Nome da pessoa

emailstringOpcional

Email da pessoa

identificationstringOpcional

Matrícula da pessoa

documentstringOpcional

CPF / CNPJ

isActivebooleanOpcional

Indica se o cadastro da pessoa está ativo

authenticationTypestringOpcional

Tipo de autenticação

licenseTypestringOpcional

Tipo de licença

businessShiftIdinteger · int32Opcional

Código identificador do turno de trabalho

leadershipIdinteger · int32Opcional

Informações do gestor imediato desta pessoa

countryIdinteger · int32Opcional

Código identificador do país

countryNamestringOpcional

Nome do país

stateIdinteger · int32Opcional

Código identificador do estado

stateNamestringOpcional

Nome do estado

stateSymbolstringOpcional

Sigla/símbolo do estado

cityIdinteger · int32Opcional

Código identificador da cidade

cityNamestringOpcional

Nome da cidade

timeZoneIdinteger · int32Opcional

Código identificador do fuso horário

timezoneAbbreviationstringOpcional

Abreviação do fuso horário

post/api/2/users
POST /api/2/users HTTP/1.1
Host: seu_endereco.do.zeev
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 481

{
  "ifExists": "text",
  "username": "text",
  "name": "text",
  "email": "text",
  "identification": "text",
  "document": "text",
  "isActive": true,
  "authenticationType": "text",
  "licenseType": "text",
  "timeZone": 1,
  "positions": {
    "ifExistsUser": "text",
    "items": [
      {
        "teamId": 1,
        "teamCode": "text",
        "positionId": 1,
        "positionCode": "text"
      }
    ]
  },
  "groups": {
    "ifExistsUser": "text",
    "items": [
      {
        "groupId": 1,
        "groupCode": "text"
      }
    ]
  },
  "welcomeMessage": {
    "send": true
  },
  "businessShiftId": 1,
  "leadershipId": 1,
  "countryId": 1,
  "stateId": 1,
  "cityId": 1
}
{
  "action": "text",
  "id": 1,
  "username": "text",
  "name": "text",
  "email": "text",
  "identification": "text",
  "document": "text",
  "isActive": true,
  "authenticationType": "text",
  "licenseType": "text",
  "businessShiftId": 1,
  "leadershipId": 1,
  "countryId": 1,
  "countryName": "text",
  "stateId": 1,
  "stateName": "text",
  "stateSymbol": "text",
  "cityId": 1,
  "cityName": "text",
  "timeZoneId": 1,
  "timezoneAbbreviation": "text"
}

Exemplo de requisição para cadastrar uma pessoa no Zeev


Atualizado

Isto foi útil?