Caso julgue necessário o uso de uma SDK, sugerimos a utilização de geradores código a partir do swagger de cada API via ferramenta https://editor.swagger.io/ (Opção Generate Client)
Esta biblioteca facilita o uso das APIs de aplicativos da plataforma da Senior Sistemas S/A em projetos Node. Essa mesma biblioteca também está disponível para Java. A documentação completa das APIs está definida em https://dev.senior.com.br/apis_publicas/.
Atualmente, as APIs disponibilizadas pelo SDK são:
- Workflow
- Gerenciamento de Conteúdo - CMS
Alguns serviços como o HCM e SAM possuem suas próprias bibliotecas, que podem ser encontradas no perfil do Dev Senior no GitHub.
Adicione a dependência da biblioteca em seu projeto através do comando:
npm install --save @seniorsistemas/senior-platform-apps
Atualmente o ambiente padrão para o desenvolvimento é o de homologação (Homologx).
Para fazer a troca do ambiente basta chamar o método setEnvironment
ou setUrl
caso queira passar uma url da plataforma diferente das configuradas. Os ambientes principais estão definidos no enum ENVIRONMENTS
apresentado abaixo:
export enum ENVIRONMENTS {
DEV = 'https://platform-homologx.senior.com.br/t/senior.com.br/bridge/1.0',
PROD = 'https://api.senior.com.br',
}
Para utilizar a biblioteca você precisa apenas se autenticar através da API authentication
e atribuir para a API o accessToken
recebido após o processo. Em seguida você poderá utilizar todos os outros serviços disponíveis. O exemplo abaixo demonstra o processo de login e criação de uma solicitação de viagem no BPM através do método startRequest
:
const { PlatformAppsApi } = require('@seniorsistemas/senior-platform-apps');
const username = process.env.PLATFORM_USER;
const password = process.env.PLATFORM_PASS;
// identificador de um processo previamente criado e publicado no Workflow
const processId = process.env.PLATFORM_BPM_PROCESS_ID;
const api = new PlatformAppsApi();
api.authentication.login(username, password).then((resp) => {
api.accessToken = JSON.parse(resp.body.jsonToken).access_token;
api.workflow.startRequest({
processId: processId,
businessData: {
destino: 'Curitiba',
partida: '2021-06-25',
retorno: '2021-06-28',
motivo: 'Visita a cliente',
},
title: 'Viagem para Curitiba',
})
.then(resp => console.log(resp.body))
.catch(err => console.error(err.response.data));
});
const { ENVIRONMENTS } = require('@seniorsistemas/senior-core');
api.setEnvironment(ENVIRONMENTS.PROD);
Na pasta examples há alguns arquivos com exemplos utilizando a biblioteca. Para executá-los, basta criar as variáveis de ambiente abaixo, sendo que elas podem ser declaradas na máquina ou em um arquivo .env
na raiz do proejto:
# Usuário da plataforma
PLATFORM_USER=<seu_usuario_da_plataforma>
# Senha da plataforma
PLATFORM_PASS=<sua_senha_da_plataforma>
Alguns exemplos fazem uso de variáveis adicionais, como no caso do Workflow demonstrado acima que utiliza a variável PLATFORM_BPM_PROCESS_ID
para definir o identificador de um processo previamente publicado na plataforma.
Contribuições ao projeto são bem vindas e podem ser realizadas seguindo nosso Guia de contribuição.
Criar uma issue https://github.com/dev-senior-com-br/senior-platform-apps-node/issues
Copyright © 2020.