- Criado por Kethellen Tayna Rodrigues Lopes, última alteração em 04 jun, 2024
Sumário
Objetivo
Esse documento tem o objetivo de exemplificar o uso da API de Moedas e Índices utilizando todos os métodos implementados.
Importante
Recurso disponível a partir da release 12.1.2402.
1 - Métodos
Serão apresentados 5 métodos, os quais foram implementados na API de Moedas e Índices, são eles:
- GET
- POST
- PATCH
- PUT
- DELETE
1.1 - GET
1.1.1 - Get All (Recuperar todas as moedas e índices)
GetAll
Máscara de Url: http://{domínio}:{porta}/api/financial/v1/currencies/
Exemplo de Configuração
Exemplo de Resultado
{ "hasNext": true, "items": [ { "id": "$", "symbol": "$", "description": "Dolar", "numberDecimalPlaces": 2, "type": "M" }, { "id": "$#", "symbol": "$#", "description": "MOEDA TESTE", "numberDecimalPlaces": 2, "type": "I" }, { "id": "$$$", "symbol": "$$$", "description": "$$$", "numberDecimalPlaces": 4, "type": "I" }, { "id": "$$$$", "symbol": "$$$$", "description": "MOEDA TESTE", "numberDecimalPlaces": 2, "type": "I" }, { "id": "$C", "symbol": "$C", "description": "Dolar Comercial Venda", "numberDecimalPlaces": 4, "type": "M" }, { "id": "$R$", "symbol": "$R$", "description": "Cotas - Itaú RF PLUS", "numberDecimalPlaces": 9, "type": "M" }, { "id": "$s", "symbol": "$s", "description": "bufunfa vivi", "numberDecimalPlaces": 2, "type": "I" }, { "id": "%", "symbol": "%", "description": "PERCENTUAL DE EMPRESTIMO", "numberDecimalPlaces": 3, "type": "I" }, { "id": "%REAJ", "symbol": "%REAJ", "description": "Percentual de Reajuste em Contrato", "numberDecimalPlaces": 4, "type": "M" }, { "id":"??{#", "symbol":"??{#", "type": "I" }, { "id": "@", "symbol": "@", "description": "arroba", "type": "I" }, { "id": "€", "symbol": "€", "description": "Euro", "numberDecimalPlaces": 2, "type": "M" }, { "id": "€_COMPRA", "symbol": "€_COMPRA", "description": "€ EURO_COMPRA", "numberDecimalPlaces": 5, "type": "M" }, { "id": "€_VENDA", "symbol": "€_VENDA", "description": "€ EURO_VENDA", "numberDecimalPlaces": 5, "type": "M" }, { "id":"{#", "symbol":"{#", "type": "I" }, { "id": "£", "symbol": "£", "description": "Libra Esterlina", "numberDecimalPlaces": 2, "type": "M" }, { "id": "¿", "symbol": "¿", "description": "EUROS", "numberDecimalPlaces": 4, "type": "M" }, { "id":"¿¿{#", "symbol":"¿¿{#", "type": "I" }, { "id": "0", "symbol": "0", "description": "ARREDONDAMENTO DO MES", "numberDecimalPlaces": 2, "type": "M" }, { "id": "0,5%", "symbol": "0,5%", "description": "juros de 0,5% ao mês", "numberDecimalPlaces": 6, "type": "I" } ] }
1.1.2 - Order (Recuperar os dados ordenados)
Parâmetros
Order: parâmetro responsável pela ordenação do resultado, podendo ser ascendente ou descendente. O resultado com a ordem descendente deve ser precedida do caractere "-" (menos).
Exemplo 1: ?order=campo1 (Ascendente)
Exemplo 2: ?order=-campo1 (Descendente)
Múltiplos campos de ordenação: ?order=[-]campo1, [-]campo2, [-]campo3 ...
Order (Asc)
Máscara de Url: http://{domínio}:{porta}/api/financial/v1/currencies?order={campo}
Exemplo de Configuração
Domínio: localhost
Porta: 8051
Campo: description
Tipo de Ordenação: Ascendente
Url Utilizada: http://localhost:8051/api/financial/v1/currencies?order=description
Exemplo de Resultado
{ "hasNext": true, "items": [ { "id": "$$$", "symbol": "$$$", "description": "$$$", "numberDecimalPlaces": 4, "type": "I" }, { "id": "CDI2", "symbol": "CDI2", "description": ".", "numberDecimalPlaces": 5, "type": "I" }, { "id": "€_COMPRA", "symbol": "€_COMPRA", "description": "€ EURO_COMPRA", "numberDecimalPlaces": 5, "type": "M" }, { "id": "€_VENDA", "symbol": "€_VENDA", "description": "€ EURO_VENDA", "numberDecimalPlaces": 5, "type": "M" }, { "id": "101%PACT", "symbol": "101%PACT", "description": "101% CDB PACTUAL", "numberDecimalPlaces": 6, "type": "I" }, { "id": "AGENOR", "symbol": "AGENOR", "description": "AGENOR MELO", "numberDecimalPlaces": 4, "type": "I" }, { "id": "Aj$ NC", "symbol": "Aj$ NC", "description": "Ajuste Não Contábil", "numberDecimalPlaces": 4, "type": "M" }, { "id": "C74", "symbol": "C74", "description": "ALUGUEL MÁQUINAS E EQUIPAMENTOS", "numberDecimalPlaces": 3, "type": "I" }, { "id": "AMBAR", "symbol": "AMBAR", "description": "AMBAR FI MULTIMERCADO", "numberDecimalPlaces": 6, "type": "I" }, { "id": "Ambar2", "symbol": "Ambar2", "description": "Ambar2", "numberDecimalPlaces": 6, "type": "I" }, { "id": "API", "symbol": "API", "description": "API Moedas e Indices", "numberDecimalPlaces": 5, "type": "M" }, { "id": "API 4", "symbol": "API 4", "description": "API Moedas e Indices", "numberDecimalPlaces": 5, "type": "M" }, { "id": "API 2", "symbol": "API 2", "description": "API Moedas e Indices - TESTE", "numberDecimalPlaces": 4, "type": "M" }, { "id": "APL", "symbol": "APL", "description": "APLICAÇÃO", "numberDecimalPlaces": 9, "type": "M" }, { "id": "108% CDI", "symbol": "108% CDI", "description": "APLICAÇÃO 108%CDI", "numberDecimalPlaces": 8, "type": "I" }, { "id": "SFIV", "symbol": "SFIV", "description": "Aplicação FIC Vale Bco Safra", "numberDecimalPlaces": 6, "type": "I" }, { "id": "MKDI", "symbol": "MKDI", "description": "Aplicação Maket DI Bco Safra", "numberDecimalPlaces": 6, "type": "I" }, { "id": "AP", "symbol": "AP", "description": "Apropriação", "numberDecimalPlaces": 2, "type": "M" }, { "id": "0", "symbol": "0", "description": "ARREDONDAMENTO DO MES", "numberDecimalPlaces": 2, "type": "M" }, { "id": "@", "symbol": "@", "description": "arroba", "type": "I" } ] }
Order (Desc)
Máscara de Url: http://{domínio}:{porta}/api/financial/v1/currencies?order=[-]{campo}
Exemplo de Configuração
Domínio: localhost
Porta: 8051
Campo: description
Tipo de Ordenação: Descendente
Url Utilizada: http://localhost:8051/api/financial/v1/currencies?order=-description
Exemplo de Resultado
{ "hasNext": true, "items": [ { "id": "Y$", "symbol": "Y$", "description": "Ying Dolar", "numberDecimalPlaces": 4, "type": "M" }, { "id": "X$", "symbol": "X$", "description": "X$", "numberDecimalPlaces": 2, "type": "M" }, { "id": "VAAC", "symbol": "VAAC", "description": "Vergalh§es e Arames de Aþo ao Carbono", "numberDecimalPlaces": 8, "type": "I" }, { "id": "VB", "symbol": "VB", "description": "VERBA", "numberDecimalPlaces": 2, "type": "M" }, { "id": "CdiHsbc", "symbol": "CdiHsbc", "description": "Variação CDI", "numberDecimalPlaces": 9, "type": "I" }, { "id": "VUNM", "symbol": "VUNM", "description": "VALOR ATUAL UNO MILE", "numberDecimalPlaces": 4, "type": "M" }, { "id": "VALOR", "symbol": "VALOR", "description": "VALOR", "numberDecimalPlaces": 0, "type": "M" }, { "id": "VALE", "symbol": "VALE", "description": "VALE TESTE", "numberDecimalPlaces": 4, "type": "I" }, { "id": "vg", "symbol": "vg", "description": "vago", "numberDecimalPlaces": 0, "type": "I" }, { "id": "V$", "symbol": "V$", "description": "V$", "numberDecimalPlaces": 2, "type": "M" }, { "id": "UTI", "symbol": "UTI", "description": "UTI", "numberDecimalPlaces": 4, "type": "M" }, { "id": "US$_M", "symbol": "US$_M", "description": "US$ MEDIA 5 DIAS SEMANA ANTERIOR", "numberDecimalPlaces": 4, "type": "I" }, { "id": "US$_VENDA", "symbol": "US$_VENDA", "description": "US$ DÓLAR_VENDA", "numberDecimalPlaces": 4, "type": "M" }, { "id": "US$_COMPRA", "symbol": "US$_COMPRA", "description": "US$ DÓLAR_COMPRA", "numberDecimalPlaces": 4, "type": "M" }, { "id": "URTJLP", "symbol": "URTJLP", "description": "URTJLP", "numberDecimalPlaces": 6, "type": "I" }, { "id": "UR", "symbol": "UR", "description": "UR-UNIDADE DE REFERENCIA", "numberDecimalPlaces": 7, "type": "I" }, { "id": "UPF", "symbol": "UPF", "description": "UPF", "numberDecimalPlaces": 6, "type": "M" }, { "id": "URV", "symbol": "URV", "description": "UNIDADE REAL DE VALOR", "numberDecimalPlaces": 0, "type": "I" }, { "id": "UPCR", "symbol": "UPCR", "description": "Unidade Padrão Caenge REF", "numberDecimalPlaces": 4, "type": "I" }, { "id": "UPC", "symbol": "UPC", "description": "Unidade Padrão CAENE", "numberDecimalPlaces": 4, "type": "I" } ] }
1.1.3 - Filter (Resultado filtrado)
Filter
Máscara de Url: http://{domínio}:{porta}/api/financial/v1/currencies/?{campo}={valor}
Exemplo de Configuração
Domínio: localhost
Porta: 8051
Campo: type
Valor: M
Url Utilizada: http://localhost:8051/api/financial/v1/currencies?type=M
Exemplo de Resultado
{ "hasNext": true, "items": [ { "id": "$C", "symbol": "$C", "description": "Dolar Comercial Venda", "numberDecimalPlaces": 4, "type": "M" }, { "id": "$R$", "symbol": "$R$", "description": "Cotas - Itaú RF PLUS", "numberDecimalPlaces": 9, "type": "M" }, { "id": "%REAJ", "symbol": "%REAJ", "description": "Percentual de Reajuste em Contrato", "numberDecimalPlaces": 4, "type": "M" }, { "id": "€", "symbol": "€", "description": "Euro", "numberDecimalPlaces": 2, "type": "M" }, { "id": "€_COMPRA", "symbol": "€_COMPRA", "description": "€ EURO_COMPRA", "numberDecimalPlaces": 5, "type": "M" } ] }
1.1.4 - Paginação
Parâmetros
Page: Página que será apresentada.
PageSize: Quantidade máxima de registros por página que serão apresentados.
Exemplo: ?page=valor1&pageSize=1
Valores padrão: Caso não sejam preenchidos os parâmetros evidenciados acima serão preenchidos com valores padrão.
Page: 1
PageSize: 20
Paginação
Máscara de Url: http://{domínio}:{porta}/api/financial/v1/currencies?page={valor1}&pageSize={valor2}
Exemplo de Configuração
Domínio: localhost
Porta: 8051
Valor1: 1
Valor2: 2
Url Utilizada: http://localhost:8051/api/financial/v1/currencies?page=1&pageSize=5
Exemplo de Resultado
{ "hasNext": true, "items": [ { "id": "$", "symbol": "$", "description": "MOEDA TESTE", "numberDecimalPlaces": 2, "type": "I" }, { "id": "$#", "symbol": "$#", "description": "MOEDA TESTE", "numberDecimalPlaces": 2, "type": "I" }, { "id": "$$$", "symbol": "$$$", "description": "$$$", "numberDecimalPlaces": 4, "type": "I" }, { "id": "$$$$", "symbol": "$$$$", "description": "MOEDA TESTE", "numberDecimalPlaces": 2, "type": "I" }, { "id": "$C", "symbol": "$C", "description": "Dolar Comercial Venda", "numberDecimalPlaces": 4, "type": "M" } ] }
1.1.5 - Fields (Retornar campos específicos no resultado)
Parâmetros
Fields: parâmetro responsável pela especialização de campos em um resultado, ou seja, o usuário define quais campos serão apresentados no resultado.
Exemplo: ?fields=campo1
Múltiplos campos de ordenação: ?fields=campo1, campo2, campo3 ...
Fields
Máscara de Url: http://{domínio}:{porta}/api/financial/v1/currencies?fields={campos}
Exemplo de Configuração
Domínio: localhost
Porta: 8051
Campo 1: symbol
Campo 2: type
Url Utilizada: http://localhost:8051/api/financial/v1/currencies?fields=symbol,type
Exemplo de Resultado
{ "hasNext": true, "items": [ { "id": "$", "symbol": "$", "type": "I" }, { "id": "$#", "symbol": "$#", "type": "I" }, { "id": "$$$", "symbol": "$$$", "type": "I" }, { "id": "$$$$", "symbol": "$$$$", "type": "I" }, { "id": "$C", "symbol": "$C", "type": "M" }, { "id": "$R$", "symbol": "$R$", "type": "M" }, { "id": "$s", "symbol": "$s", "type": "I" }, { "id": "%", "symbol": "%", "type": "I" }, { "id": "%REAJ", "symbol": "%REAJ", "type": "M" }, { "id": "@", "symbol": "@", "type": "I" }, { "id": "€", "symbol": "€", "type": "M" }, { "id": "€_COMPRA", "symbol": "€_COMPRA", "type": "M" }, { "id": "€_VENDA", "symbol": "€_VENDA", "type": "M" }, { "id": "£", "symbol": "£", "type": "M" }, { "id": "¿", "symbol": "¿", "type": "M" }, { "id": "0", "symbol": "0", "type": "M" }, { "id": "0,5%", "symbol": "0,5%", "type": "I" }, { "id": "001", "symbol": "001", "type": "M" }, { "id": "0014", "symbol": "0014", "type": "M" }, { "id": "01", "symbol": "01", "type": "M" } ] }
1.1.6 - GetOne (Recuperar moeda ou índice pelo símbolo)
Parâmetros
Para recuperar os dados de uma moeda ou índice especifico é necessário informar o símbolo.
GetOne
Máscara de Url: http://{domínio}:{porta}/api/financial/v1/currencies/{symbol}
Exemplo de Configuração
Domínio: localhost
Porta: 8051
Symbol: R$
Url Utilizada: http://localhost:8051/api/financial/v1/currencies/R$
Exemplo de Resultado
{ "id": "R$", "symbol": "R$", "description": "Real", "singularIntegerPart": "real", "pluralIntegerPart": "reais", "pluralFractionalPart": "centavos", "numberDecimalPlaces": 4, "lag": 0, "type": "M", "defaultReferenceSymbol": "R$" }
1.2 - POST
1.2.1 - Post (Inserir uma moeda ou índice)
Post
Máscara de Url: http://{domínio}:{porta}/api/financial/v1/currencies
Exemplo de Configuração
Exemplo de Entrada
{ "symbol":"Fr", "description":"Franco Suiço", "singularIntegerPart": "1", "pluralIntegerPart": "1", "pluralFractionalPart": "1", "numberDecimalPlaces": 2, "lag": 0, "type": "M", "defaultReferenceSymbol": "R$" }
Exemplo de Resultado Positivo
{ "id": "Fr", "symbol": "Fr", "description": "Franco Suiço", "singularIntegerPart": "1", "pluralIntegerPart": "1", "pluralFractionalPart": "1", "numberDecimalPlaces": 2, "lag": 0, "type": "M", "defaultReferenceSymbol": "R$" }
Exemplo de Resultado Negativo
{ "Code": "FE006", "Message": "Chave duplicada\r\n\r\nPossíveis causas:\r\n - inclusão de registro cujo valor da chave primária já existe\r\n - inclusão de registro cujo valor do índice único já existe", "DetailMessage": "Violation of PRIMARY KEY constraint 'PKGMOEDA'. Cannot insert duplicate key in object 'dbo.GMOEDA'. The duplicate key value is (Fr).\r\nThe statement has been terminated.\r\n\r\nINSERT INTO [GMOEDA] ([SIMBOLO], [DESCRICAO], [INTEIROSINGULAR], [INTEIROPLURAL], [FRACSINGULAR], [FRACPLURAL], [NUMCASASDECIMAIS], [DEFASAGEM], [TIPO], [SIMBOLOREFDEFAULT], [IDINTEGRACAO], [RECCREATEDBY], [RECCREATEDON], [RECMODIFIEDBY], [RECMODIFIEDON]) VALUES ('Fr', 'Franco Suiço', '1', '1', null, '1', 2, 0, 'M', 'R$', null, 'mestre', CONVERT ( DATETIME, CONVERT ( VARCHAR, GETDATE(), 120) ), 'mestre', CONVERT ( DATETIME, CONVERT ( VARCHAR, GETDATE(), 120) ))", "HelpUrl": "", "Details": null }
1.3 - PUT
1.3.1 - Put (Atualizar uma moeda ou índice)
Put
Máscara de Url: http://{domínio}:{porta}/api/financial/v1/currencies/{symbol}
Exemplo de Configuração
Domínio: localhost
Porta: 8051
Symbol: Fr
Url Utilizada: http://localhost:8051/api/financial/v1/currencies/Fr
Exemplo de Entrada
{ "description":"Franco Suiço Fr", "singularIntegerPart": "2", "pluralIntegerPart": "2", "pluralFractionalPart": "2", "numberDecimalPlaces": 4, "lag": 0, "type": "M", "defaultReferenceSymbol": "R$" }
Exemplo de Resultado Positivo
{ "id": "Fr", "symbol": "Fr", "description": "Franco Suiço Fr", "singularIntegerPart": "2", "pluralIntegerPart": "2", "pluralFractionalPart": "2", "numberDecimalPlaces": 4, "lag": 0, "type": "M", "defaultReferenceSymbol": "R$" }
Exemplo de Resultado Negativo
{ "Code": "FE019", "Message": "Valor inválido para o campo Tipo", "DetailMessage": "", "HelpUrl": "", "Details": null }
1.4 - PATCH
1.4.1 - Patch (Atualizar parcialmente uma moeda ou índice)
Patch
Máscara de Url: http://{domínio}:{porta}/api/financial/v1/currencies/{symbol}
Exemplo de Configuração
Domínio: localhost
Porta: 8051
Symbol: Fr
Url Utilizada: http://localhost:8051/api/financial/v1/currencies/Fr
Exemplo de Entrada
{ "description":"Fr" }
Exemplo de Resultado Positivo
{ "id": "Fr", "symbol": "Fr", "description": "Fr", "singularIntegerPart": "2", "pluralIntegerPart": "2", "pluralFractionalPart": "2", "numberDecimalPlaces": 4, "lag": 0, "type": "M", "defaultReferenceSymbol": "R$" }
Exemplo de Resultado Negativo
{ "Code": "FE019", "Message": "Devido à segurança de campos não é permitido alterar o valor do campo: FRACSINGULAR.", "DetailMessage": "", "HelpUrl": "", "Details": null }
1.4 - DELETE
1.4.1 - Delete (Excluir uma moeda ou índice)
Delete
Máscara de Url: http://{domínio}:{porta}/api/financial/v1/currencies/{symbol}
Exemplo de Configuração
Domínio: localhost
Porta: 8051
Symbol: Fr
Url Utilizada: http://localhost:8051/api/financial/v1/currencies/Fr
Exemplo de Resultado Positivo Postman
Obs.: Em caso de sucesso, será retornado o respondeCode = 201 e a resposta em branco.
Exemplo de Resultado Negativo
{ "Code": "FE011", "Message": "Registro não encontrado na base de dados.", "DetailMessage": "", "HelpUrl": "", "Details": null }
- Sem rótulos