CurrencyRateAPI

Ferramenta de arranque rápido

Precisa de testar a API sem ter de consultar toda a documentação? Aceda ao Painel de Controlo, onde encontrará a Ferramenta de Arranque Rápido — uma forma simples de experimentar todos os endpoints disponíveis com um único clique.

Clique no botão abaixo para se registar gratuitamente e começar a utilizar a Ferramenta de Arranque Rápido.

Começando

Termos e conceitos-chave que precisa de conhecer para começar a trabalhar com a API de Taxa de Câmbio:

Definição Descrição
Símbolo Código de moeda de três letras (ex.: USD, EUR). Suportamos os códigos padrão ISO 4217 para moedas fiduciárias e vários códigos para criptomoedas .
Moeda base A moeda a partir da qual se inicia a conversão. Por exemplo, se 1 USD = X EUR, então USD é a moeda base. A moeda base predefinida é o EUR.
Moeda alvo A moeda para a qual a moeda base é convertida. Utilizando o mesmo exemplo, EUR é a moeda de destino.
Criptomoedas Além das moedas fiduciárias tradicionais, a nossa API processa e fornece taxas de câmbio para uma vasta gama de criptomoedas populares.
URL base O URL raiz utilizado para todos os endpoints da API. Todas as requisições são enviadas para este caminho base.

Resposta da API

As taxas de câmbio fornecidas por CurrencyRateAPI são, por defeito, em euros. Todos os dados são devolvidos no formato JSON padrão e podem ser facilmente analisados utilizando qualquer linguagem de programação.

Exemplo de resposta:
Abaixo, encontrará um exemplo de uma resposta API contendo uma variedade de moedas comuns do mundo, todas relativas ao euro (EUR) e com o registo da data e hora em que foram recebidas.

{
    "success": true,
    "base": "eur",
    "date": "2025-08-25",
    "rates": {
        "usd": "1.1697",
        "gbp": "0.8659",
        "cad": "1.6171"
    },
    "last_update_unix": "1769067006"
}

Como mostrado acima, a resposta da API às taxas de câmbio em tempo real inclui vários campos importantes:

  • success Indica se a solicitação foi bem-sucedida.
  • base Retorna o código de 3 letras da moeda base utilizada para este pedido.
  • date Retorna a data real para a qual as taxas de câmbio são fornecidas (formato AAAA-MM-DD).
  • rates Contém a lista das moedas solicitadas e as suas respetivas taxas de câmbio atuais.
  • last_update_unix Apresenta o carimbo de data/hora (em formato Unix) dos dados mais recentes disponíveis no sistema.

Pontos de extremidade disponíveis

A CurrencyRateAPI inclui vários endpoints de API, cada um oferecendo funcionalidades específicas. A disponibilidade de determinados endpoints depende do seu plano de subscrição.

  • Ponto final da lista de moedas. Este endpoint retorna a lista completa de todas as moedas suportadas. /api/codes (Alternativa: /api/currencies)
  • Ponto final das taxas mais recentes. Este endpoint devolve dados de taxas de câmbio em tempo real para todas as moedas suportadas. /api/latest
  • Ponto final das taxas históricas. Este endpoint devolve dados históricos da taxa de câmbio para uma data específica. /api/YYYY-MM-DD (Alternativa: /api/history?date=YYYY-MM-DD). Os dados históricos estão disponíveis a partir de 4 de Janeiro de 1999.

Metodologia da Taxa de Câmbio

Para garantir a precisão e consistência dos dados, CurrencyRateAPI segue uma metodologia rigorosa para gerir e fornecer taxas de câmbio:

  • Taxas de mercado intermédias: Por defeito, a API devolve taxas mid . Estas representam a média aritmética entre os preços de compra ( bid ) e de venda ( ask ) do mercado, ou taxas de referência oficiais dos bancos centrais.
  • Finalização do dia (EOD): As taxas históricas fornecidas pela API são finalizadas no final do dia em UTC (Tempo Universal Coordenado).
  • Cálculo da taxa cruzada: Para pares de moedas que não estão diretamente disponíveis nas nossas fontes, o sistema calcula automaticamente taxas cruzadas de alta precisão, utilizando as principais moedas globais como referência (pivot).
  • Mecanismo de Contingência Inteligente: Caso os dados para uma data solicitada não estejam disponíveis (por exemplo, devido ao fecho do mercado aos fins de semana ou feriados), o sistema procura automaticamente a taxa válida mais recente dentro de uma janela deslizante de 8 dias .
  • Alta precisão: Para evitar erros de arredondamento nos cálculos financeiros, as taxas de câmbio são armazenadas e processadas com até 18 casas decimais .

Pontos finais

Ponto final de símbolos suportados

https://currencyrateapi.com/api/codes

Este endpoint retorna a lista completa de todas as moedas suportadas. Também pode usar o alias /api/currencies.

Uma lista de todas as moedas suportadas, numa linguagem acessível a humanos, está também disponível na nossa página Moedas Suportadas .

Moedas básicas: Por defeito, alguns outros endpoints (como /latest e /{YYYY-MM-DD}) devolvem um conjunto limitado das principais moedas globais para minimizar o tráfego. Estas moedas "básicas" são:

USD, EUR, GBP, CHF, JPY, CAD, AUD, NZD, SEK, NOK, DKK, ISK, PLN, CZK, HUF, RON, HRK, RSD,
MKD, MDL, TRY, SGD, HKD, KRW, TWD, ILS, AED, SAR, QAR, KWD, BHD, OMR, ZAR

Resposta da API:

{
    "success": true,
    "currencies": {
        "EUR": {
            "entity": "EUROPEAN UNION",
            "currency": "Euro",
            "alphabetic_code": "EUR",
            "numeric_code": 978,
            "minor_unit": 2,
            "title": "Euro",
            "symbol": "€",
            "data_from": "1999-01-04"
        },
        "BTC": {
            "entity": "CRYPTOCURRENCY",
            "currency": "Bitcoin",
            "alphabetic_code": "BTC",
            "title": "Bitcoin",
            "symbol": "₿",
            "is_crypto": true,
            "data_from": "2024-03-02"
        },
        [...]
    }
}

Objetos de resposta:

Chave Descrição
success Retorna true para um pedido bem-sucedido. Se false, será incluído um objeto de erro na resposta.
currencies Retorna todas as moedas suportadas com informação detalhada sobre cada uma.
entity País ou região onde a moeda é utilizada, ou "CRIPTOMOEDA" para ativos digitais.
currency Nome oficial completo da moeda.
alphabetic_code Código alfabético padrão de 3 letras (ISO 4217 para moedas fiduciárias).
numeric_code Código numérico ISO 4217, se aplicável.
minor_unit Número de casas decimais utilizadas para a moeda.
withdrawal_date A data em que a moeda foi retirada de circulação, se aplicável.
title Título abreviado para a moeda.
symbol Símbolo gráfico da moeda (ex.: $, €, ₿).
is_crypto Sinalize ( true ) se a moeda for uma criptomoeda.
data_from A data mais antiga para a qual os dados da taxa de câmbio estão disponíveis para esta moeda.

Últimas taxas Endpoint

https://currencyrateapi.com/api/latest?
    base=USD&
    quote=GBP,JPY,EUR

Parâmetros da solicitação:

Parâmetro Descrição
base [Opcional] Introduza um código de moeda ISO de 3 letras para definir a moeda base para conversão. O predefinido é EUR.
quote [Opcional] Introduza uma lista de códigos de moeda separados por vírgulas para limitar a resposta a moedas específicas. (Alternativa: codes)
extended_list [Opcional] Se estiver definido para 1, a API devolve a lista completa de moedas disponíveis. Por predefinição, apenas é devolvida uma lista mínima para reduzir o tráfego.
precision [Opcional] Define o número de casas decimais nas taxas de saída (0-18). O padrão devolve a precisão total disponível sem notação científica.

Resposta da API:

{
    "success": true,
    "base": "usd",
    "date": "2026-01-22",
    "rates": {
        "gbp": "0.74350935478637",
        "jpy": "158.00358051914",
        "eur": "0.8518613169776"
    },
    "last_update_unix": "1769067006"
}

Objetos de resposta:

Chave Descrição
success Retorna true para um pedido bem-sucedido. Se false, será incluído um objeto de erro na resposta.
base Devolve o código de 3 letras da moeda base.
date Retorna a data real para a qual as taxas de câmbio são fornecidas.
rates Retorna os dados das taxas de câmbio para as moedas especificadas no pedido.
last_update_unix Retorna um timestamp Unix indicando quando os dados devolvidos foram atualizados pela última vez.

Ponto final das taxas históricas

https://currencyrateapi.com/api/2025-08-25?
    base=EUR&
    quote=USD,GBP,CAD

Formato alternativo: /api/history?date=2025-08-25...

Parâmetros da solicitação:

Parâmetro Descrição
date [Obrigatório] A data histórica para a qual as taxas de câmbio são solicitadas. Formato: AAAA-DD-MM. Pode ser fornecida no caminho do URL (por exemplo, /api/2025-08-25) ou como parâmetro de consulta (por exemplo, /api/history?date=2025-08-25).
base [Opcional] Introduza um código de moeda de 3 letras para definir a moeda base da conversão. O predefinido é EUR.
quote [Opcional] Introduza uma lista de códigos de moeda separados por vírgulas para limitar a resposta a moedas específicas. (Alternativa: codes)
extended_list [Opcional] Se estiver definido para 1, a API devolve a lista completa de moedas disponíveis. Por predefinição, apenas é devolvida uma lista mínima para reduzir o tráfego.
precision [Opcional] Define o número de casas decimais nas taxas de saída (0-18). O padrão devolve a precisão total disponível sem notação científica.

Resposta da API:

{
    "success": true,
    "base": "eur",
    "date": "2025-08-25",
    "rates": {
        "usd": "1.1697",
        "gbp": "0.8659",
        "cad": "1.6171"
    },
    "last_update_unix": "1769067006"
}

Objetos de resposta:

Chave Descrição
success Retorna true para um pedido bem-sucedido. Se false, será incluído um objeto de erro na resposta.
base Devolve o código de 3 letras da moeda base.
date Retorna a data real para a qual as taxas de câmbio são fornecidas.
rates Retorna os dados da taxa de câmbio para as moedas na data especificada no pedido.
last_update_unix Retorna um timestamp Unix indicando quando os dados devolvidos foram atualizados pela última vez.

Código de exemplo

PHP (cURL)

// Set API Endpoint (can be 'latest' or a date 'YYYY-MM-DD')
$endpoint = 'latest';

// Initialize CURL:
$ch = curl_init('https://currencyrateapi.com/api/'.$endpoint.'?base=USD"e=GBP,JPY');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

// Store the data:
$json = curl_exec($ch);
curl_close($ch);

// Decode JSON response:
$exchangeRates = json_decode($json, true);

// Access the exchange rate values, e.g. GBP:
echo $exchangeRates['rates']['GBP'];

JavaScript (pesquisar)

 // Set endpoint (can be 'latest' or a date 'YYYY-MM-DD')
const endpoint = 'latest';
const params = '?base=USD"e=GBP,JPY';

// Get exchange rates via the selected endpoint:
fetch('https://currencyrateapi.com/api/' + endpoint + params)
    .then(response => {
        return response.json();
    })
    .then(json => {

        // Exchange rate data is stored in json.rates
        console.log(json.rates.GBP);

        // Timestamp can be accessed in json.last_update_unix
        console.log(json.last_update_unix);
    })
    .catch(error => {
        console.error('Fetch error:', error);
    });