Fluxo de Criação e Atualização de Filiais e Estrutura Organizacional
Este fluxo obtém os dados básicos de filiais da base de dados do sistema utilizado pela sua empresa e os mantém atualizados na plataforma da Gupy.
Gerando o token
Para utilizar este fluxo, é necessário utilizar o Bearer Token gerado nas configurações avançadas da plataforma. Acesse nossa seção de autenticação para saber como gerar o o token de autenticação.
No momento de gerar o token habilite os seguintes endpoints da V1:
- Company Branches
Criando as filiais
Acesse o endpoint POST Branches e preencha os parâmetros obrigatórios:
Parâmetro | Descrição |
---|---|
code | Código atribuído à filial no sistema externo do cliente (deve ser único para cada branch) |
name | Nome da filial (Utilizar o formato: Nome da empresa > Nome da filial) |
path | Nome da empresa (não são aceitos caracteres especiais, pontos e traços) |
Exemplo de requisição
curl --request POST \
--url https://api.gupy.io/api/v1/branches \
--header 'accept: application/json' \
--header 'authorization: Bearer XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX' \
--header 'content-type: application/json' \
--data '
{
"path": [
"matriz"
],
"code": "1",
"name": "Matriz",
"addressCountry": "Brazil",
"addressCountryShortName": "BR",
"addressState": "Rio de Janeiro",
"addressStateShortName": "RJ",
"addressCity": "Rio de Janeiro",
"addressStreet": "Rua Visconde de Pirajá",
"addressNumber": "500",
"addressZipCode": "20000000"
}
'
Exemplo de resposta
{
"code": "1",
"path": [
"matriz"
],
"name": "Matriz",
"createdAt": "2023-02-24T20:46:01.929Z",
"updatedAt": "2023-02-24T20:46:01.929Z",
"id": 1234,
"addressNumber": "500",
"addressStreet": "Rua Visconde de Pirajá",
"addressCity": "Rio de Janeiro",
"addressState": "Rio de Janeiro",
"addressStateShortName": "RJ",
"addressCountry": "Brazil",
"addressCountryShortName": "BR",
"addressZipCode": "20000000",
"addressLatitude": null,
"addressLongitude": null
}
Criando sua estrutura organizacional
Caso a sua empresa tenha uma estrutura organizacional com uma matriz, unidades e departamentos é possível criar replicar essa relação através da API, criando associações entre os níveis. A forma de criar essa relação é usando no nome o próximo nível. Veja abaixo um exemplo com 3 níveis.
{
"path": [
"Matriz",
],
"code": "1",
"name": "Matriz"
}
{
"path": [
"Matriz",
"Unidade 1"
],
"code": "1.01",
"name": "Matriz > Unidade-01"
}
{
"path": [
"Matriz",
"Minas Gerais",
"Belo Horizonte"
],
"code": "1.01-2",
"name": "Matriz > Minas Gerais > Belo Horizonte"
}
Atualizando as filiais e Estruturas Organizacionais
Atenção ao atualizar uma Estrutura Organizacional
- Caso seja necessário a atualização de algum estrutura, verificar o Path. Ele tem que ser enviado nos casos de criação e/ou atualização;
- Os paths não podem ser iguais;
- Importante que todos os níveis tenham código cadastrado, para facilitar na hora da busca por algum nível;
- Acesse o endpoint GET Branches
- No campo "name" ou "code" filtre pela filial que deseja atualizar
- Clique em "Try it!" e salve a branchId
- Acesse o endpoint PUT Branches e preencha os parâmetros:
Parâmetro | Descrição |
---|---|
code | Código atribuído à filial no sistema externo do cliente |
name | Nome da filial (Utilizar o formato: Nome da empresa > Nome da filial) |
path | Nome da empresa (não são aceitos caracteres especiais, pontos e traços) |
Exemplo de requisição
curl --request PUT \
--url https://api.gupy.io/api/v1/branches/1234 \
--header 'accept: application/json' \
--header 'authorization: Bearer XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX' \
--header 'content-type: application/json' \
--data '
{
"path": [
"matriz"
],
"code": "1",
"name": "Sede",
"addressCountry": "Brazil",
"addressCountryShortName": "BR",
"addressState": "Rio de Janeiro",
"addressStateShortName": "RJ",
"addressCity": "Rio de Janeiro",
"addressStreet": "Rua Visconde de Pirajá",
"addressNumber": "500",
"addressZipCode": "20000000"
}
'
Exemplo de resposta
{
"code": "1",
"path": [
"matriz"
],
"name": "Sede",
"createdAt": "2023-02-24T20:46:01.929Z",
"updatedAt": "2023-02-24T20:46:01.929Z",
"id": 1234,
"addressNumber": "500",
"addressStreet": "Rua Visconde de Pirajá",
"addressCity": "Rio de Janeiro",
"addressState": "Rio de Janeiro",
"addressStateShortName": "RJ",
"addressCountry": "Brazil",
"addressCountryShortName": "BR",
"addressZipCode": "20000000",
"addressLatitude": null,
"addressLongitude": null
}
Excluindo filiais e Estruturas Organizacionais
Excluindo Estruturas Organizacionais
As E.O só podem ser excluídas quando não tiverem nenhum vínculo com alguma requisição ou usuário. Caso haja a tentativa de exclusão irá gerar um erro. Nossa sugestão para esse caso é criar uma estrutura de inativo e colocar os níveis que precisam ser excluídos nessa nova estrutura para não ficarem no guarda-chuva da E.O ativa
- Acesse o endpoint GET Branches
- No campo "name" ou "code" filtre pela filial que deseja atualizar
- Clique em "Try it!" e salve a branchId
- Acesse o endpoint DELETE Branches e preencha a branchId
Exemplo de requisição
curl --request DELETE \
--url https://api.gupy.io/api/v1/branches/1234 \
--header 'accept: application/json' \
--header 'authorization: Bearer XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX'
Exemplo de resposta
OK
Como ficará essa integração na Gupy? - Filiais
Como ficará essa integração na Gupy? - Estrutura Organizacional
Updated 5 months ago