Totvs custom tabs box items |
---|
default | yes |
---|
referencia | prerequisitos |
---|
| Para implantação da API OAuth2 é necessário: - Sistema operacional 64 bits compatível (Linux/Microsoft Windows);
- Servidor web Apache 64 bits versão 2.4 (versão homologada: 2.4.47 e superiores);
- Servidor Redis versão 3.2 (versão homologada: 3.2.100 e superiores)
- 512 MB de memória RAM (mínimo);
- Processador 1,6 GHz (mínimo) e;
- 25 MB de espaço disponível em disco.
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | instalacao |
---|
| Totvs custom tabs box |
---|
tabs | Linux,Microsoft Windows |
---|
ids | linux,windows |
---|
| Totvs custom tabs box items |
---|
default | yes |
---|
referencia | linux |
---|
| A instalação da API em sistemas operacionais Linux depende, em todos os casos, da distribuição adotada. Em distribuições baseadas na distribuição Ubuntu, é necessário disponibilizar a API no diretório /usr/lib/apache2/modules. Além disso, é necessário criar os arquivos littera_v1.load e littera_v1.conf no diretório /etc/apache2/mods-available. O conteúdo do arquivo littera_v1.load é: Bloco de código |
---|
title | Arquivo littera_v1.load |
---|
| LoadModule littera_module_v1 modules/mod_littera_v1.so |
Já o conteúdo do arquivo littera_v1.conf é: Bloco de código |
---|
title | Arquivo littera_v1.conf |
---|
| <IfModule littera_module_v1>
<Location /api/tlra/littera/v1>
SetHandler mod_littera_v1-handler
</Location>
</IfModule> |
Configuradas as opções de carregamento da API através do servidor web Apache, é necessário criar o arquivo de configuração da API em /etc/littera_v1/database.conf conforme indicado abaixo: Bloco de código |
---|
# Este é o arquivo de configuração da API de autenticação OAuth2 do
# ecossistema Recintos Aduaneiros. Assim como o arquivo de configuração
# do Apache, as configurações aqui seguem o padrão "chave valor",
# sendo assim, tanto chaves quanto valores contém uma única palavra.
#
# Comentários podem ser feitos adicionando o símbolo # como primeiro
# caractere da linha. Isso também pode ser utilizado para desativar
# configurações.
# Definições de acesso ao banco de dados
#
# DriverID: Driver utilizado para a conexão com o banco de dados
# Server: Nome do servidor onde a instância do banco de dados está instalada
# Port: Porta pela qual o banco de dados pode ser acessado
# Name: Nome do banco de dados a ser acessado
# User: Nome do usuário de acesso ao banco de dados
# Password: Senha usada pelo usuário para acesso ao banco de dados (criptografada)
# Charset: Conjunto de caracteres utilizado pelo banco de dados
CharSet=UTF8
DriverID=PG
Database=littera
Hostname=localhost
Password=tlra@2024
Port=5432
Username=postgres |
Com as configurações efetivadas, é necessário ativar o módulo da API através do comando abaixo: $ sudo a2enmod littera_v1 E reiniciar o servidor web Apache através do comando abaixo: $ sudo service apache2 restart |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | windows |
---|
| Para implantação da API em servidores com sistema operacional Microsoft Windows é necessário disponibilizar seu módulo no diretório de módulos da instalação do servidor web Apache. Após a disponibilização do arquivo, é necessário editar o arquivo httpd.conf constante na instalação do servidor web Apache, acrescentando as linhas a seguir: Bloco de código |
---|
LoadModule littera_module_v1 modules/mod_littera_v1.so
<IfModule littera_module_v1>
<Location /api/tlra/littera/v1>
SetHandler mod_littera_v1-handler
</Location>
</IfModule> |
Como parte da configuração da API, é necessário criar seu arquivo de configuração em C:\TOTVS\etc\littera_v1\database.conf com o conteúdo abaixo: Bloco de código |
---|
# Este é o arquivo de configuração da API de autenticação OAuth2 do
# ecossistema Recintos Aduaneiros. Assim como o arquivo de configuração
# do Apache, as configurações aqui seguem o padrão "chave valor",
# sendo assim, tanto chaves quanto valores contém uma única palavra.
#
# Comentários podem ser feitos adicionando o símbolo # como primeiro
# caractere da linha. Isso também pode ser utilizado para desativar
# configurações.
# Definições de acesso ao banco de dados
#
# DriverID: Driver utilizado para a conexão com o banco de dados
# Server: Nome do servidor onde a instância do banco de dados está instalada
# Port: Porta pela qual o banco de dados pode ser acessado
# Name: Nome do banco de dados a ser acessado
# User: Nome do usuário de acesso ao banco de dados
# Password: Senha usada pelo usuário para acesso ao banco de dados (criptografada)
# Charset: Conjunto de caracteres utilizado pelo banco de dados
CharSet=UTF8
DriverID=PG
Database=littera
Hostname=localhost
Password=tlra@2024
Port=5432
Username=postgres |
Tendo efetivado a construção do arquivo de configuração da API, é necessário reiniciar o servidor web Apache através de seu gestor de serviços ou o gestor de serviços do sistema operacional. |
|
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | configuracao |
---|
| Para configuração da API de integração, é necessário editar o arquivo de configuração database.conf definindo seus parâmetros conforme abaixo: Conjunto | Parâmetro | Descrição | Valor padrão | Formato | Status |
---|
Banco de dados | CharSet | Conjunto de caracteres utilizado pelo banco de dados. | UTF8 | Nenhum | Implementado | Banco de dados | DriverID | Identificador do tipo de conexão com o banco de dados. | PG | Nenhum | Implementado | Banco de dados | Database | Nome do banco de dados a ser conectado. | littera | Nenhum | Implementado | Banco de dados | Hostname | Nome do servidor e instância de instalação do banco de dados. | localhost | Hostname/IPv4/IPv6 | Implementado | Banco de dados | Password | Senha do usuário de acesso ao banco de dados. | tlra@2024 | Nenhum | Implementado | Banco de dados | Port | Porta de conexão com o banco de dados. | 5432 | 1~65535 | Implementado | Banco de dados | Username | Nome do usuário de conexão com o banco de dados. | postgres | Nenhum | Implementado |
É importante notar que entre os parâmetros e seus valores deve haver apenas um sinal de igualdade "=". Se esta regra não for obedecida, a configuração adotará o valor padrão por considerar inválida a opção. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | utilizacao |
---|
| Totvs custom tabs box |
---|
tabs | Autenticação,Consumo |
---|
ids | autenticacao,consumo |
---|
| Totvs custom tabs box items |
---|
default | yes |
---|
referencia | autenticacao |
---|
| Totvs custom tabs box |
---|
tabs | Logon,Renovação |
---|
ids | logon,renovacao |
---|
| Totvs custom tabs box items |
---|
default | yes |
---|
referencia | logon |
---|
| Para efetivar a autenticação do usuário junto à API de integração, a aplicação cliente deve, considerando o endereço de instalação da API como localhost, operando em suas portas padrão (80 e 443): - Utilizar o verbo POST para a solicitação;
- Definir o Content Type da requisição como application/x-www-form-urlencoded;
- Adicionar ao corpo da requisição os campos:
- grant_type com valor password;
- username com o valor referente ao nome do usuário utilizado para o logon e;
- password com o valor referente à senha deste usuário;
- Enviar a requisição para o endpoint https://localhost/api/tlra/littera/v1/auth.
Como resultado de sucesso, a API devolverá um objeto JSON como o demonstrado abaixo: Bloco de código |
---|
language | js |
---|
title | Resposta para sucesso na autenticação |
---|
| {
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJFeHBlZGlcdTAwRTdcdTAwRTNvIGRlIHBhY290ZXMiLCJleHAiOjE3MTQ1MDQyMjIsImlhdCI6MTcxNDI0NTAyMiwiaXNzIjoiTGl0dGVyYSIsInN1YiI6IjAxMjM0NTY3LTg5YWItY2RlZi0wMTIzLTQ1Njc4OWFiY2RlZiIsIm5ubSI6IkFkbWluaXN0cmFkb3IiLCJuYW0iOiJVc3VcdTAwRTFyaW8gQWRtaW5pc3RyYWRvciJ9.5dWQ0BJHaa9piHP6yoPv57VqI_dO66_MIr7fWt-SYVI",
"expires_in": 259200,
"token_type": "Basic",
"refresh_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3MTQ1MDUxMjIsImlzcyI6IkxpdHRlcmEiLCJuYmYiOjE3MTQ1MDM5MjIsInN1YiI6ImFkbWluIn0.xB79G_B6RsnBg_wzDDN-XFRdMzLoY7wAXP2o2Pv1Y4I"
} |
Em caso de falha na autenticação, a API retornará um erro 401 - Unauthorized. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | renovacao |
---|
| Para renovar a autenticação do usuário junto à API de integração, a aplicação cliente deve, considerando o endereço de instalação da API como localhost, operando em suas portas padrão (80 e 443): - Utilizar o verbo POST para a solicitação;
- Definir o Content Type da requisição como application/x-www-form-urlencoded;
- Adicionar ao corpo da requisição os campos:
- grant_type com valor refresh_token e;
- refresh_token com o valor referente ao token de renovação de autenticação obtido durante o processo de autenticação;
- Enviar a requisição para o endpoint https://localhost/api/tlra/littera/v1/auth.
Como resultado de sucesso, a API devolverá um objeto JSON como o demonstrado abaixo: Bloco de código |
---|
language | js |
---|
title | Resposta para sucesso na autenticaçãorenovação |
---|
| {
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJFeHBlZGlcdTAwRTdcdTAwRTNvIGRlIHBhY290ZXMiLCJleHAiOjE3MTQ1MDQyMjIsImlhdCI6MTcxNDI0NTAyMiwiaXNzIjoiTGl0dGVyYSIsInN1YiI6IjAxMjM0NTY3LTg5YWItY2RlZi0wMTIzLTQ1Njc4OWFiY2RlZiIsIm5ubSI6IkFkbWluaXN0cmFkb3IiLCJuYW0iOiJVc3VcdTAwRTFyaW8gQWRtaW5pc3RyYWRvciJ9.5dWQ0BJHaa9piHP6yoPv57VqI_dO66_MIr7fWt-SYVI",
"expires_in": 259200,
"token_type": "Basic",
"refresh_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3MTQ1MDUxMjIsImlzcyI6IkxpdHRlcmEiLCJuYmYiOjE3MTQ1MDM5MjIsInN1YiI6ImFkbWluIn0.xB79G_B6RsnBg_wzDDN-XFRdMzLoY7wAXP2o2Pv1Y4I"
} |
Em caso de falha na verificação de validade do token fornecido, a API retornará um erro 401 - Unauthorized. |
|
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | consumo |
---|
| Totvs custom tabs box |
---|
tabs | Consulta,Inclusão,Alteração,Exclusão |
---|
ids | consulta,inclusao,alteracao,exclusao |
---|
| Totvs custom tabs box items |
---|
default | yes |
---|
referencia | consulta |
---|
| As consultas aos objetos armazenados na base de dados do projeto Littera podem ser efetivadas de duas formas diferentes: por meio de seu identificado único ou por meio de parâmetros fornecidos na Query String adicionada à URL da requisição. Para tanto, a aplicação cliente deve, considerando o endereço de instalação da API como localhost, operando em suas portas padrão (80 e 443): - Utilizar o verbo GET para a requisição;
- Adicionar o cabeçalho Authorization aos cabeçalhos da requisição, contendo como valor "Basic " - sem aspas -, sucedido do valor de token obtido por meio do processo de autenticação, devendo este estar dentro de sua validade e;
- Utilizar a URL https://localhost/api/tlra/littera/v1/{className} como base para a requisição, onde className refere-se ao nome do objeto a ser consultado, podendo:
- Não acrescentar qualquer parâmetro à URL, efetuando uma pesquisa genérica que trará os primeiros 25 registros ativos daquele objeto, ordenados por sua descrição;
- Adicionar um identificador único à URL, retornando o objeto completo caso o identificador seja encontrado e;
- Adicionar uma Query String à URL, podendo esta conter os campos page, pageSize, active e filter.
Os campos page, pageSize e active são valores escaláveis, podendo ser descritos conforme a seguinte tabela: Campo | Tipo de dado | Valores aceitos | Valor padrão | Uso |
---|
page | Inteiro | 1~ | 1 | Determina o número da "página de dados a ser acessada. Se não fornecido, seu valor é 1. | pageSize | Inteiro | 1~50 | 25 | Determina o número de registros por página a serem exibidos. Se não fornecido, seu valor padrão é 25, tendo seu valor máximo como 50. | active | Texto | true/false/all | true | Determina qual flag de status deve ser considerada na busca, referindo-se ao campo active, sendo true para os registros ativos, false para os registros inativos e all para todos os registros. |
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | inclusao |
---|
|
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | alteracao |
---|
|
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | exclusao |
---|
|
|
|
|
|
|
|