[POST] Sincronizar agrupamentos de usuários de filas de impressão
Este endpoint sincroniza agrupamentos de usuários, mantendo a base de agrupamentos de usuários no portal NDD Orbix consistente com a base de origem da qual a API está conectada:
Agrupamentos e/ou usuários inexistentes serão criados no portal.
Agrupamentos e/ou usuários existentes serão atualizados no portal.
Agrupamentos ausentes na base de origem serão excluídos do portal.
Usuários desvinculados do agrupamento na base de origem também serão desvinculados do agrupamento no portal.
Caso não exista nenhum agrupamento com o mesmo GroupName
, um novo agrupamento será criado. Se já houver um agrupamento cadastrado com o mesmo GroupName
, mas com informações diferentes de GroupDescription
, o agrupamento será atualizado.
Caso não exista nenhum usuário com o mesmo Logon
e Domain
, um novo usuário será criado e vinculado automaticamente ao agrupamento. Se já houver um usuário cadastrado com o mesmo Logon
e Domain
, mas com informações diferentes de Name
e/ou Email
, o usuário será atualizado.
Chamada
POST /v1/groups/users-sync
Cabeçalho (header)
Parâmetro | Descrição | Tipo | Obrigatório |
---|---|---|---|
| Nome do provedor. Para obter essa informação, acesse a documentação: Menus do portal. |
| Sim |
|
| Sim |
Corpo (body)
Parâmetro | Descrição | Tipo | Obrigatório |
---|---|---|---|
| Nome do cliente, conforme cadastrado no portal NDD Orbix. |
| Sim |
| Lista de agrupamentos. |
| Sim |
| Nome que identificará o agrupamento. |
| Sim |
| Breve descrição sobre o objetivo do agrupamento. |
| Não |
| Lista de usuários. |
| Sim |
| Identificação de acesso do usuário. Não utilize acentos, símbolos e espaços. |
| Sim |
| Domínio ao qual o usuário pertence. Não utilize acentos, símbolos e espaços. |
| Sim |
| Nome completo do usuário. |
| Não |
| E-mail do usuário. Exemplo: abc@abc.com. |
| Não |
Exemplo de requisição
Sincronizar dois agrupamentos com dois usuários cada:
curl -L -X POST 'https://developer.nddorbix.com/printqueue-external-integration-api/v1/groups/users-sync' \
-H 'Tenant: {tenant}' \
-H 'Authorization: Bearer {token}' \
-H 'Content-Type: application/json' \
--data-raw '{
"Client": "ABC",
"Groups": [
{
"GroupName": "Group 1",
"GroupDescription": "Group 1 description",
"Users": [
{
"Logon": "carlos.silva",
"Domain": "NDD",
"Name": "Carlos Silva",
"Email": "carlos.silva@ndd.tech"
},
{
"Logon": "joao.souza",
"Domain": "NDD",
"Name": "João Souza"
}
]
},
{
"GroupName": "Group 2",
"GroupDescription": "Group 2 description",
"Users": [
{
"Logon": "maria.oliveira",
"Domain": "NDD",
"Email": "maria.oliveira@ndd.tech"
},
{
"Logon": "joana.pereira",
"Domain": "NDD",
"Name": "Joana Pereira",
"Email": "joana.pereira@ndd.tech"
}
]
}
]
}'
Em uma mesma requisição, é possível sincronizar até 5 agrupamentos com 1.000 usuários cada.
Para a sincronia de mais de 5 agrupamentos, realize mais de uma requisição.
Exemplo de resposta
A resposta de código 201 indica que:
todos os agrupamentos foram criados, atualizados ou excluídos com sucesso e retornará o seguinte JSON:
[]
ou
houve falha parcial na criação, atualização ou exclusão de alguns agrupamentos, e retornará, em JSON, o motivo da falha:
[
{
"groupName": "GroupTest GroupTest GroupTest GroupTest GroupTest GroupTest GroupTest GroupTest GroupTest GroupTest GroupTest GroupTest GroupTest GroupTest GroupTest GroupTest",
"users": [
{
"user": "NDD//João Souza",
"errorMessage": "Logon is not valid."
}
],
"errorMessage": "Group Name is too long."
},
{
"groupName": "Group 2",
"users": [
{
"user": "NDD//joana.pereira",
"errorMessage": "E-mail is not valid."
}
],
"errorMessage": ""
}
]
A resposta de código 400 indica que houve falha na criação, atualização ou exclusão de todos os agrupamentos e retornará o seguinte JSON:
{
"errors": {
"3400": [
"All groups are invalid."
]
},
"title": "BadRequest",
"status": 400,
"detail": "BusinessException",
"instance": "/v1/groups/users-sync"
}