Live Crypto
Crypto Finance Credits / request: 1Returns cryptocurrency prices in USD. All symbols or a single code.
GET
https://api.apikodu.com/api/v1/markets/crypto
Documentation
Overview
Live crypto prices.
Authentication
Every request requires the x-api-key header. Credits used and remaining quota are returned in response headers (x-api-credits-used, x-api-remaining-credits, x-rate-limit-*).
Request
GET
https://api.apikodu.com/api/v1/markets/crypto?code=BTC
Query string. Empty code returns a summary list.
Parameters
| Name | Type | Required | Default | Options | Description |
|---|---|---|---|---|---|
code |
string | Optional | — | BTC ETH USDT BNB XRP SOL ADA DOGE TRX DOT |
Symbol. The list shows always-present common symbols; for the full list call without code and read items[].code. Empty returns the summary list. |
Response
| Name | Type | Description |
|---|---|---|
list |
string | Market list name (doviz, altin, kripto, emtia). |
updatedAtUtc |
string | Last update time of the list (UTC ISO datetime). |
items |
array | Symbol prices. A single item when code is set. |
items[].code |
string | Symbol code. Example: USD, GA, BTC, COIL. |
items[].buying |
number | Buying price. |
items[].selling |
number | Selling price. May equal buying on single-price markets. |
items[].change |
number | Absolute change (buying side). |
items[].changePercent |
number | Percent change. |
items[].direction |
string | Direction: up, down or flat. |
items[].currency |
string | Price currency (TRY, USD ...). |
items[].currencySymbol |
string | Currency symbol (₺, $ ...). |
Errors
| HTTP | code | Description |
|---|---|---|
400 |
-230 |
code is not in this list. |
503 |
-229 |
Live market cache is not available yet. |
401 |
-100 |
x-api-key is missing, empty, malformed, inactive, banned, expired, IP-restricted, or not allowed for this API. |
429 |
-221 |
Per-minute request limit exceeded. Response headers: x-rate-limit-limit, x-rate-limit-remaining, x-rate-limit-reset. |
429 |
— | Package credit quota cannot cover this request. Body may be { error, limit, currentUsage, requestCost } (no code field). |
500 |
-1 |
Unexpected server error. message is a generic error text without technical details. |
Notes
- Success body is { data: { ... } }. Error body is { code, message }. code is an ApiResponseCode enum value (negative integer).
Sample response
{
"data": {
"list": "kripto",
"updatedAtUtc": "2026-08-20T12:00:00",
"items": [
{
"code": "BTC",
"buying": 69315.92,
"selling": 69315.92,
"change": 0.29,
"changePercent": 201.02,
"direction": "up",
"currency": "USD",
"currencySymbol": "$"
},
{
"code": "ETH",
"buying": 2245.66,
"selling": 2245.66,
"change": 1.24,
"changePercent": 27.85,
"direction": "up",
"currency": "USD",
"currencySymbol": "$"
},
{
"code": "USDT",
"buying": 1.00,
"selling": 1.00,
"change": -0.04,
"changePercent": 0.00,
"direction": "down",
"currency": "USD",
"currencySymbol": "$"
}
]
}
}
Code samples
const response = await fetch('https://api.apikodu.com/api/v1/markets/crypto', {
method: 'GET',
headers: {
'x-api-key': 'YOUR_API_KEY'
}
});
const data = await response.json();
console.log(data);
import requests
headers = {
'x-api-key': 'YOUR_API_KEY'
}
response = requests.get('https://api.apikodu.com/api/v1/markets/crypto', headers=headers)
print(response.json())
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("x-api-key", "YOUR_API_KEY");
var response = await client.GetStringAsync("https://api.apikodu.com/api/v1/markets/crypto");
Console.WriteLine(response);
$response = file_get_contents('https://api.apikodu.com/api/v1/markets/crypto', false, stream_context_create([
'http' => [
'header' => "x-api-key: YOUR_API_KEY"
]
]));
print_r(json_decode($response, true));
curl -X GET 'https://api.apikodu.com/api/v1/markets/crypto' \
-H 'x-api-key: YOUR_API_KEY'
Start building in minutes
Create a free account, get your API key and send your first request in minutes.