はじめに
Finexly APIは、170以上の通貨のリアルタイムおよび過去の為替レートを提供します。始めるのは簡単です:
- 無料アカウントに登録する
- ダッシュボードからAPIアクセスキーを取得してください
- 最初のAPIリクエストを作成する
ベースURL
https://api.finexly.com/v1/
認証
すべてのAPIリクエストにはBearerトークンによる認証が必要です。APIキーをAuthorizationヘッダーに含めてください。
認証ヘッダー(必須)
Authorization: Bearer YOUR_API_KEY
レート制限: 現在の使用状況はレスポンスヘッダーを確認してください。
X-RateLimit-Limit,
X-RateLimit-Used,
X-RateLimit-Units
APIエンドポイント
GET
/v1/currencies
サポートされているすべての通貨コードのリストを取得します。
パラメータ
| 名前 | タイプ | 必須 | 説明 |
|---|
例
GET https://api.finexly.com/v1/currencies
// 応答
[
"AED",
"ANG",
"AUD",
"EUR",
"GBP",
"USD"
]
GET
/v1/rate
特定の通貨ペアの為替レートを取得します。
パラメータ
| 名前 | タイプ | 必須 | 説明 |
|---|---|---|---|
| from | string | はい | 基準通貨コード(大文字) |
| to | string | はい | 相場通貨コード(大文字) |
例
GET https://api.finexly.com/v1/rate?from=USD&to=EUR
// 応答
{
"pair": "USD_EUR",
"rate": 0.9215
}
GET
/v1/convert
1回のリクエストで複数の通貨ペアの為替レートを取得します。
パラメータ
| 名前 | タイプ | 必須 | 説明 |
|---|---|---|---|
| q | string | はい | BASE_QUOTE形式のカンマ区切りペア |
例
GET https://api.finexly.com/v1/convert?q=USD_EUR,USD_GBP
// 応答
{
"USD_EUR": {
"rate": 0.9215
},
"USD_GBP": {
"rate": 0.7892
}
}
GET
/v1/convert-amount
特定の金額をある通貨から別の通貨に変換します。
パラメータ
| 名前 | タイプ | 必須 | 説明 |
|---|---|---|---|
| from | string | はい | 変換元通貨コード(大文字) |
| to | string | はい | 変換先通貨コード(大文字) |
| amount | number | はい | 変換する金額 |
例
GET https://api.finexly.com/v1/convert-amount?from=USD&to=EUR&amount=100
// 応答
{
"pair": "USD_EUR",
"rate": 0.9215,
"amount": 100,
"result": 92.15
}
コード例
# Get single rate
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.finexly.com/v1/rate?from=USD&to=EUR"
# Get multiple rates
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.finexly.com/v1/convert?q=USD_EUR,USD_GBP,BTC_USD"
# 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")
エラーコード
| コード | タイプ | 説明 |
|---|---|---|
| 400 | BAD_REQUEST | 無効なリクエストパラメータまたは必須フィールドの欠落。 |
| 401 | UNAUTHORIZED | APIトークンが見つからないか無効です。 |
| 403 | FORBIDDEN | アクセスが拒否されました。アカウントが非アクティブの可能性があります。 |
| 413 | PAYLOAD_TOO_LARGE | リクエストペイロードが最大許容サイズを超えています。 |
| 429 | RATE_LIMIT_EXCEEDED | レート制限を超えました。X-RateLimitヘッダーを確認してください。 |
| 500 | INTERNAL_ERROR | 内部サーバーエラーが発生しました。もう一度お試しください。 |