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

Domínio: localhost

Porta: 8051

Url Utilizada: http://localhost:8051/api/financial/v1/currencies/

Exemplo de Resultado

Resultado (JSON)
{
    "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

Resultado (JSON)
{
    "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

Resultad (JSON)
{
    "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

Resultad (JSON)
{
    "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

Resultado (JSON)
{
    "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

Resultado (JSON)
{
    "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

Resultado (JSON)
{
    "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

Domínio: localhost

Porta: 8051

Url Utilizada: http://localhost:8051/api/financial/v1/currencies

Exemplo de Entrada

Entrada (JSON)
{
	"symbol":"Fr",
	"description":"Franco Suiço",
	"singularIntegerPart": "1",
	"pluralIntegerPart": "1",
	"pluralFractionalPart": "1",
	"numberDecimalPlaces": 2,
    "lag": 0,
    "type": "M",
    "defaultReferenceSymbol": "R$"
}

Exemplo de Resultado Positivo

Resultado (JSON)
{
    "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

Resultado (JSON)
{
    "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

Entrada (JSON)
{
	"description":"Franco Suiço Fr",
	"singularIntegerPart": "2",
	"pluralIntegerPart": "2",
	"pluralFractionalPart": "2",
	"numberDecimalPlaces": 4,
    "lag": 0,
    "type": "M",
    "defaultReferenceSymbol": "R$"
}

Exemplo de Resultado Positivo

Resultado (JSON)
{
    "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

Resultado (JSON)
{
    "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

Entrada (JSON)
{
	"description":"Fr"
}

Exemplo de Resultado Positivo

Resultado (JSON)
{
    "id": "Fr",
    "symbol": "Fr",
    "description": "Fr",
    "singularIntegerPart": "2",
    "pluralIntegerPart": "2",
    "pluralFractionalPart": "2",
    "numberDecimalPlaces": 4,
    "lag": 0,
    "type": "M",
    "defaultReferenceSymbol": "R$"
}

Exemplo de Resultado Negativo

Resultado (JSON)
{
    "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

Resultado (JSON)
{
    "Code": "FE011",
    "Message": "Registro não encontrado na base de dados.",
    "DetailMessage": "",
    "HelpUrl": "",
    "Details": null
}
  • Sem rótulos