Memulai

API Finexly menyediakan nilai tukar real-time dan historis untuk 170+ mata uang. Memulai sangat mudah:

  1. Daftar untuk akun gratis
  2. Dapatkan kunci akses API Anda dari dasbor
  3. Buat permintaan API pertama Anda

URL Dasar

https://api.finexly.com/v1/

Otentikasi

Semua permintaan API memerlukan autentikasi melalui token Bearer. Sertakan kunci API Anda di header Authorization:

Opsi 1: Header Otorisasi (Direkomendasikan)

Header Otorisasi (Diperlukan)

Authorization: Bearer YOUR_API_KEY

Opsi 2: Parameter Kuery

Lewatkan kunci API Anda sebagai parameter kueri:

GET https://api.finexly.com/v1/rate?from=USD&to=EUR&api_key=YOUR_API_KEY

⚠ Catatan Keamanan: Kunci API dalam URL dapat dicatat dalam log akses server dan dapat bocor melalui header HTTP Referrer. Untuk penggunaan produksi, kami merekomendasikan metode header Authorization. Parameter kueri disediakan sebagai kemudahan untuk pengujian cepat dan integrasi sederhana.

Pembatasan Tarif: Periksa header respons untuk penggunaan Anda saat ini: X-RateLimit-Limit, X-RateLimit-Used, X-RateLimit-Units

Titik Akhir API

GET /v1/currencies

Dapatkan daftar semua kode mata uang yang didukung.

Parameter

Nama Jenis Diperlukan Deskripsi

Contoh

GET https://api.finexly.com/v1/currencies

// Respon
[
    "AED",
    "ANG",
    "AUD",
    "EUR",
    "GBP",
    "USD"
]
GET /v1/rate

Dapatkan nilai tukar untuk pasangan mata uang tertentu.

Parameter

Nama Jenis Diperlukan Deskripsi
from string Ya Kode mata uang dasar (huruf besar)
to string Ya Kode mata uang kuotasi (huruf besar)

Contoh

GET https://api.finexly.com/v1/rate?from=USD&to=EUR

// Respon
{
    "pair": "USD_EUR",
    "rate": 0.9215
}
GET /v1/convert

Dapatkan nilai tukar untuk beberapa pasangan mata uang dalam satu permintaan.

Parameter

Nama Jenis Diperlukan Deskripsi
q string Ya Pasangan dipisahkan koma dalam format BASE_QUOTE

Contoh

GET https://api.finexly.com/v1/convert?q=USD_EUR,USD_GBP

// Respon
{
    "USD_EUR": {
        "rate": 0.9215
    },
    "USD_GBP": {
        "rate": 0.7892
    }
}
GET /v1/convert-amount

Konversi jumlah tertentu dari satu mata uang ke mata uang lain.

Parameter

Nama Jenis Diperlukan Deskripsi
from string Ya Kode mata uang sumber (huruf besar)
to string Ya Kode mata uang target (huruf besar)
amount number Ya Jumlah yang akan dikonversi

Contoh

GET https://api.finexly.com/v1/convert-amount?from=USD&to=EUR&amount=100

// Respon
{
    "pair": "USD_EUR",
    "rate": 0.9215,
    "amount": 100,
    "result": 92.15
}

Contoh Kode

# Using Authorization header (recommended)
curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.finexly.com/v1/rate?from=USD&to=EUR"

# Using query parameter
curl "https://api.finexly.com/v1/rate?from=USD&to=EUR&api_key=YOUR_API_KEY"

# Get multiple rates
curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.finexly.com/v1/convert?q=USD_EUR,USD_GBP"

# Convert amount
curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.finexly.com/v1/convert-amount?from=USD&to=EUR&amount=100"
<?php
$apiKey = 'YOUR_API_KEY';

// Using cURL
$ch = curl_init();
curl_setopt_array($ch, [
    CURLOPT_URL => 'https://api.finexly.com/v1/rate?from=USD&to=EUR',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer ' . $apiKey,
    ],
]);

$response = curl_exec($ch);
curl_close($ch);

$data = json_decode($response, true);
echo "USD/EUR Rate: " . $data['rate'];
const apiKey = 'YOUR_API_KEY';

// Get single rate
const response = await fetch('https://api.finexly.com/v1/rate?from=USD&to=EUR', {
  headers: {
    'Authorization': `Bearer ${apiKey}`
  }
});

const data = await response.json();
console.log(`USD/EUR Rate: ${data.rate}`);

// Convert amount
const convertResponse = await fetch(
  'https://api.finexly.com/v1/convert-amount?from=USD&to=EUR&amount=100',
  { headers: { 'Authorization': `Bearer ${apiKey}` } }
);
const result = await convertResponse.json();
console.log(`100 USD = ${result.result} EUR`);
import requests

api_key = 'YOUR_API_KEY'
headers = {'Authorization': f'Bearer {api_key}'}

# Get single rate
response = requests.get(
    'https://api.finexly.com/v1/rate',
    params={'from': 'USD', 'to': 'EUR'},
    headers=headers
)
data = response.json()
print(f"USD/EUR Rate: {data['rate']}")

# Convert amount
response = requests.get(
    'https://api.finexly.com/v1/convert-amount',
    params={'from': 'USD', 'to': 'EUR', 'amount': 100},
    headers=headers
)
result = response.json()
print(f"100 USD = {result['result']} EUR")

Kode Kesalahan

Kode Jenis Deskripsi
400 BAD_REQUEST Parameter permintaan tidak valid atau bidang wajib tidak ada.
401 UNAUTHORIZED Token API tidak ada atau tidak valid.
403 FORBIDDEN Akses ditolak. Akun Anda mungkin tidak aktif.
413 PAYLOAD_TOO_LARGE Ukuran permintaan melebihi ukuran maksimum yang diizinkan.
429 RATE_LIMIT_EXCEEDED Anda telah melebihi batas kecepatan. Periksa header X-RateLimit.
500 INTERNAL_ERROR Terjadi kesalahan server internal. Silakan coba lagi.

Konektor AI (MCP)

Finexly menggunakan Protokol Konteks Model, sehingga asisten AI dapat membaca tarif secara langsung alih-alih diberikan. Ini adalah saluran terpisah dari REST API di bawah: ia mengautentikasi dengan OAuth daripada kunci API, dan hanya dapat dibaca.

URL Server

https://mcp.finexly.com

Alat yang disediakan

Nama Deskripsi
get_exchange_rate Nilai tukar saat ini antara dua mata uang.
convert_amount Konversi jumlah, dengan nilai silang melalui dolar AS jika diperlukan.
list_currencies Setiap mata uang yang kami cakup.
get_historical_rates Tarif harian selama periode tertentu, untuk pasangan yang dikumpulkan secara langsung.

Otorisasi

Penghubung menjalankan alur kode otorisasi OAuth 2.1 dengan PKCE. Penemuan berada di URL di bawah ini; satu-satunya cakupan adalah fx:read, dan tidak ada cakupan yang memberikan akses ke akun.

  • https://finexly.com/.well-known/oauth-authorization-server
  • https://finexly.com/oauth/authorize
  • https://finexly.com/oauth/token
  • https://finexly.com/oauth/jwks
Panduan pengaturan dan rencana tunjangan →

Tutorials & Guides

Learn how to integrate Finexly with your favorite programming languages and frameworks.