Histórico da Página
...
Ao criar uma especificação de API TOTVS, é necessário preciso ter em mente que existem alguns métodos padrão types e parameters padronizados previamente criados pela TTALK., armazenados no arquivo totvsApiTypesBase.json. Com isso, esses endpoints parameters não precisam ser implementados , apenas propriamente referenciados.nos endpoints, mas sim propriamente referenciados na própria especificação de API. O exemplo a seguir traz um trecho da API CustomerVendor v1, mostrando como é feita essa referenciação.
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
"paths": {
"/customerVendor": {
"get": {
"tags": [
"customerVendor"
],
"summary": "Retorna todos Clientes/Fornecedores",
"x-totvs": {
"productInformation": [
{
"product": "Protheus",
"available": true,
"note": "Este verbo não está diponível no protheus. Utilize a consulta CustomerVendorEntity",
"minimalVersion": "12.1.21"
}
]
},
"description": "Retorna todos clientes e/ou fornecedores",
"operationId": "getcustomerVendor",
"parameters": [
{
"$ref": "https://raw.githubusercontent.com/totvs/ttalk-standard-message/master/jsonschema/apis/types/totvsApiTypesBase.json#/parameters/Authorization"
},
{
"$ref": "https://raw.githubusercontent.com/totvs/ttalk-standard-message/master/jsonschema/apis/types/totvsApiTypesBase.json#/parameters/Fields"
},
{
"$ref": "https://raw.githubusercontent.com/totvs/ttalk-standard-message/master/jsonschema/apis/types/totvsApiTypesBase.json#/parameters/Order"
},
{
"$ref": "https://raw.githubusercontent.com/totvs/ttalk-standard-message/master/jsonschema/apis/types/totvsApiTypesBase.json#/parameters/Page"
},
{
"$ref": "https://raw.githubusercontent.com/totvs/ttalk-standard-message/master/jsonschema/apis/types/totvsApiTypesBase.json#/parameters/PageSize"
}
],
"responses": {
"200": {
"description": "Operação realizada com sucesso",
"content": {
"application/json": {
"schema": {
"$ref": "https://raw.githubusercontent.com/totvs/ttalk-standard-message/master/jsonschema/schemas/CustomerVendor_2_006.json#/definitions/PagedCustomerVendors"
}
}
}
},
"400": {
"description": "Erro na requisição!",
"content": {
"application/json": {
"schema": {
"$ref": "https://raw.githubusercontent.com/totvs/ttalk-standard-message/master/jsonschema/apis/types/totvsApiTypesBase.json#/definitions/ErrorModel"
}
}
}
}
|
Retornar ao Fluxograma de Criação de Integrações
...
Caso a API já exista, porém não para o produto desejado pelo usuário, significa que há necessidade de adaptar o arquivo OpenAPI para que o produto em questão passe a ser especificado. Para tal, é necessário adicionar ao arquivo JSON da especificação da API novos objetos dentro do array "productInformation" nas propriedades x-totvs, na info e nos verbos dos paths.
Seguindo os exemplos apresentados o mesmo exemplo da API apresentado na seção 3.4.1, a adição de um novo produto se daria da seguinte forma no cabeçalho (info):
...