Uma Interface de Programação de Aplicações é uma coleção de informações padronizadas estabelecida por um software que possibilita a utilização de suas funcionalidades por outros aplicativos. Com as informações persistidas em uma especificação de API, é possível enviar ou receber dados de uma aplicação sem que seja necessário entrar nos detalhes da implementação deste programa.
É de grande interesse para a TOTVS que aplicações externas consigam se comunicar com seus produtos de maneira facilitada. Por meio da implementação de uma API, é possível que outras aplicações obtenham dados internos dos produtos TOTVS, apenas enviando uma requisição HTTP para o endereço devidamente descrito na especificação da API.
Para descrever uma API, se faz necessária uma especificação padronizada. O padrão utilizado para a construção das APIs TOTVS é o OpenAPI 3.0, o qual descreve um formato para definição de toda a API. Essa especificação é que define como serão evidenciados os endpoints e seus métodos, parâmetros de operações de entrada e saída, métodos de autenticação, metadados (tais como informações gerais, contato, licença e termos de uso), entre outros.
As regras para o desenvolvimento de APIs estão especificadas no nosso Guia de Implementação de APIs.
Todas as APIs já desenvolvidas podem ser encontradas em nosso repositório do GitHub.
Uma API não deve ser confundida com um schema. As APIs são interfaces que definem os métodos e caminhos que permitem a comunicação entre dois pontos. Já o schema é uma forma de apresentar dados e seus tipos, permitindo a posterior transmissão de informações. Definições mais apuradas sobre os schemas podem ser encontradas nesta documentação.
Anteriormente era possível que o schema fosse incluído diretamente na API, porém essa regra foi modificada. Para aprimorar a reusabilidade dos schemas, agora os arquivos JSON devem ser separados em API e Schema. Esse modelo possibilita a utilização do protocolo transactions sem a necessidade de desenvolver uma API, caso essa configuração seja suficiente para suprir a necessidade e interesse do desenvolvedor. Se uma
Justificar quebra entre dois arquivos distintos. Reusabilidade. Pessoa pode usar o protocolo transactions e se comunicar utilizando apenas schema. Caso outra aplicação necessite, consegue se comunicar através das APIs, seguindo padrão OpenAPI.
API é o contrato, traz informações importantes que definem os moldes das mensagens trafegadas. API Reference mostra as APIs, não os schemas
Schema são as mensagens padronizadas propriamente ditas. Trazem as definições dos types, binda com os produtos totvs através do x-totvs.
Os arquivos que especificam
O API reference tira os dados do json da api. Ir no api reference e identificar se o produto ta la, dentro dos x-totvs
Vincula o arquivo OpenAPI aos produtos TOTVS. Informações necessárias. Mostrar os campos, preenchimento de cada um, etc.
Caso a api já exista mas não para seu produto, significa que você precisa aadaptar a API ao seu produto.
Adicionar novo produto, especificação de adapters etc etc