Histórico da Página
...
A propriedade x-totvs nas APIs traz diferentes informações dependendo da seção em que ela está localizada no OpenAPI, porém com está localizada tanto no cabeçalho (tag info) quanto nos métodos dos paths no arquivo OpenAPI, contendo informações diferentes dependendo do local em que está inserida. Contudo, as propriedades x-totvs tem sempre um objetivo em comum: armazenar dados pertinentes aos produtos TOTVS. São nas propriedades x-totvs ao longo do documento em que são especificadas informações como : nome o nome do produto ao qual se refere, segmento ao qual está vinculado, adapter atrelado, se determinado verbo está disponível para aquele caminho, entre outros.A
Abaixo está descrito o comportamento da propriedade x-totvs pode estar presente em diferentes seções do OpenAPIImplementação de APIs com Mensagem Padronizadae o significado de cada uma de suas tags internas, utilizadas apenas no arquivo OpenAPI. Caso a intenção seja entender o funcionamento do x-totvs no JsonSchema, visite a documentação de Definição da Mensagem no modelo JsonSchema.
x-totvs em diferentes partes do OpenAPI
x-totvs dentro da "info"
O exemplo a seguir é um trecho da API UnitOfMeasure v2.
Bloco de código language js title Exemplo collapse true (...) "info": { "description": "API para informações de Unidade de Medida para Unidade de Medida TOTVS", "version": "2.000", "title": "UnitOfMeasure", "contact": { "name": "T-Talk", "url": "api.totvs.com.br", "email": "[email protected]" }, "x-totvs": { "messageDocumentation": { "name": "UnitOfMeasure", "description": "Cadastro de Unidade de Medida", "segment": "Serviços" }, "productInformation": [ { "product": "Protheus", "contact": "[email protected]", "description": "Cadastro de Unidade de Medida", "adapter": "QIES030.prw" }, { "product": "Logix", "contact": "[email protected]", "description": "Cadastro de Unidade de Medida", "adapter": "" } ] } } (...)
A propriedade "messageDocumentation" do " x-totvs " traz informações sobre a própria API.
...
x-totvs dentro dos verbos dos "paths"
O exemplo a seguir também é um trecho da API UnitOfMeasure v2.
Bloco de código language js title Exemplo collapse true (...) "paths": { "/UnitOfMeasures": { "get": { "tags": [ "UnitOfMeasures" ], "summary": "Retorna lista de Unidade de Medida", "x-totvs": { "productInformation": [ { "product": "Protheus", "available": true, "note": "Este verbo esta disponivel com todos os parametros", "minimalVersion": "12.1.21" }, { "product": "Logix", "available": true, "note": "Este verbo esta disponivel com todos os parametros", "minimalVersion": "12.1.23" } ] } (...)
Diferentemente do x-totvs da "info", a propriedade "messageDocumentation" não está presente nos x-totvs dos "paths".
Já a propriedade "productInformation" traz informações sobre os produtos TOTVS.- product: produto ao qual aquelas informações do "productInformation" se referem;
- available: campo booleano que indicia de o verbo esta implementado no produto;
- note: observações sobre o verbo referente ao produto, como regras específicas;
- minimalVersion: a versão minima na qual o verbo foi implementado no produto.
Sinta-se à vontade para navegar por nossas APIs, tanto pelo API Reference quanto pelo repositório do GitHub, e observar como estão configurados seus respectivos x-totvs!
Clique aqui para retornar Retornar ao Fluxograma de Criação de Integrações
...
Identificar se o produto a ser integrado já está definido na documentação da API
O API Reference é um portal que obtém os dados do JSON da API e os transfere para uma interface visual, tornando a navegação pelas APIs mais atrativa aos usuários. Para identificar quais produtos estão adaptados a uma determinada API, basta acessar o API Reference e identificar quais os produtos que se encontram explicitados (como demonstra a animação abaixo).
...
Como evidenciado no GIF o usuário pode, se preferir, acessar diretamente o arquivo OpenAPI e indentificar no próprio JSON se as tags x-totvs especificam o produto procurado.
Retornar Clique aqui para retornar ao Fluxograma de Criação de Integrações
...
deve ser adicionado no info, nos paths e também schema
Retornar Clique aqui para retornar ao Fluxograma de Criação de Integrações
Outras documentações
Implementação de APIs com Mensagem Padronizada