API цен на золото в реальном времени

Цены на золото в реальном времени — один вызов API.

$
1 · Ваше приложение
2 · Grams API
XAU 4,219.72
XAG 53.40
3 · JSON в реальном времени
1 Отправьте запрос со своим API-ключом 2 Мы получаем рыночные данные в реальном времени 3 Мгновенный JSON — в любой валюте
5Металлов
14+Валют
<100msВремя отклика
99.9%Аптайм

Всё необходимое для оценки металлов

Один простой и безопасный REST API — без SDK, нужен только API-ключ.

curl "https://grams.today/v1/prices?currency=USD" \ -H "Authorization: Bearer YOUR_API_KEY"
import requests res = requests.get( "https://grams.today/v1/prices?currency=USD", headers={"Authorization": "Bearer YOUR_API_KEY"}, ) print(res.json())
const res = await fetch("https://grams.today/v1/prices?currency=USD", { headers: { Authorization: "Bearer YOUR_API_KEY" }, }); const data = await res.json(); console.log(data);
$ch = curl_init("https://grams.today/v1/prices?currency=USD"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, [ "Authorization: Bearer YOUR_API_KEY", ]); $data = json_decode(curl_exec($ch), true); print_r($data);
require "net/http" require "json" uri = URI("https://grams.today/v1/prices?currency=USD") req = Net::HTTP::Get.new(uri) req["Authorization"] = "Bearer YOUR_API_KEY" res = Net::HTTP.start(uri.host, uri.port, use_ssl: true) { |h| h.request(req) } puts JSON.parse(res.body)
req, _ := http.NewRequest("GET", "https://grams.today/v1/prices?currency=USD", nil) req.Header.Set("Authorization", "Bearer YOUR_API_KEY") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body))
HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://grams.today/v1/prices?currency=USD")) .header("Authorization", "Bearer YOUR_API_KEY") .build(); HttpResponse<String> res = HttpClient.newHttpClient() .send(request, HttpResponse.BodyHandlers.ofString()); System.out.println(res.body());
using var client = new HttpClient(); client.DefaultRequestHeaders.Add("Authorization", "Bearer YOUR_API_KEY"); string json = await client.GetStringAsync("https://grams.today/v1/prices?currency=USD"); Console.WriteLine(json);
// response { "XAU": { "ounce": 4219.72, "gram_24k": 134.27 }, "XAG": { "ounce": 53.4 }, "XPT": { … } }

Цены в реальном времени для 5 металлов

Золото, серебро, платина, палладий и медь — напрямую из нашего рыночного потока в реальном времени, непрерывно обновляемого на сервере.

  • Унция + за грамм (24k/22k/21k/18k)
  • Дневное изменение и процент
  • Кэшированные ответы менее чем за секунду
curl "https://grams.today/v1/convert?metal=XAU&weight=10&unit=g&karat=22&currency=SAR" \ -H "Authorization: Bearer YOUR_API_KEY"
import requests res = requests.get( "https://grams.today/v1/convert?metal=XAU&weight=10&unit=g&karat=22&currency=SAR", headers={"Authorization": "Bearer YOUR_API_KEY"}, ) print(res.json())
const res = await fetch("https://grams.today/v1/convert?metal=XAU&weight=10&unit=g&karat=22&currency=SAR", { headers: { Authorization: "Bearer YOUR_API_KEY" }, }); const data = await res.json(); console.log(data);
$ch = curl_init("https://grams.today/v1/convert?metal=XAU&weight=10&unit=g&karat=22&currency=SAR"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, [ "Authorization: Bearer YOUR_API_KEY", ]); $data = json_decode(curl_exec($ch), true); print_r($data);
require "net/http" require "json" uri = URI("https://grams.today/v1/convert?metal=XAU&weight=10&unit=g&karat=22&currency=SAR") req = Net::HTTP::Get.new(uri) req["Authorization"] = "Bearer YOUR_API_KEY" res = Net::HTTP.start(uri.host, uri.port, use_ssl: true) { |h| h.request(req) } puts JSON.parse(res.body)
req, _ := http.NewRequest("GET", "https://grams.today/v1/convert?metal=XAU&weight=10&unit=g&karat=22&currency=SAR", nil) req.Header.Set("Authorization", "Bearer YOUR_API_KEY") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body))
HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://grams.today/v1/convert?metal=XAU&weight=10&unit=g&karat=22&currency=SAR")) .header("Authorization", "Bearer YOUR_API_KEY") .build(); HttpResponse<String> res = HttpClient.newHttpClient() .send(request, HttpResponse.BodyHandlers.ofString()); System.out.println(res.body());
using var client = new HttpClient(); client.DefaultRequestHeaders.Add("Authorization", "Bearer YOUR_API_KEY"); string json = await client.GetStringAsync("https://grams.today/v1/convert?metal=XAU&weight=10&unit=g&karat=22&currency=SAR"); Console.WriteLine(json);
// response { "value": 4663.56, "currency": "SAR" }

Любая валюта, любая единица, любая проба

Мгновенно переводите вес в стоимость более чем в 14+ валют. Граммы, унции или килограммы — с учётом проб золота.

  • USD · SAR · AED · KWD · QAR · BHD …
  • единицы г / унция / кг
  • 24k · 22k · 21k · 18k
curl "https://grams.today/v1/gold?currency=USD" \ -H "Authorization: Bearer YOUR_API_KEY"
import requests res = requests.get( "https://grams.today/v1/gold?currency=USD", headers={"Authorization": "Bearer YOUR_API_KEY"}, ) print(res.json())
const res = await fetch("https://grams.today/v1/gold?currency=USD", { headers: { Authorization: "Bearer YOUR_API_KEY" }, }); const data = await res.json(); console.log(data);
$ch = curl_init("https://grams.today/v1/gold?currency=USD"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, [ "Authorization: Bearer YOUR_API_KEY", ]); $data = json_decode(curl_exec($ch), true); print_r($data);
require "net/http" require "json" uri = URI("https://grams.today/v1/gold?currency=USD") req = Net::HTTP::Get.new(uri) req["Authorization"] = "Bearer YOUR_API_KEY" res = Net::HTTP.start(uri.host, uri.port, use_ssl: true) { |h| h.request(req) } puts JSON.parse(res.body)
req, _ := http.NewRequest("GET", "https://grams.today/v1/gold?currency=USD", nil) req.Header.Set("Authorization", "Bearer YOUR_API_KEY") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body))
HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://grams.today/v1/gold?currency=USD")) .header("Authorization", "Bearer YOUR_API_KEY") .build(); HttpResponse<String> res = HttpClient.newHttpClient() .send(request, HttpResponse.BodyHandlers.ofString()); System.out.println(res.body());
using var client = new HttpClient(); client.DefaultRequestHeaders.Add("Authorization", "Bearer YOUR_API_KEY"); string json = await client.GetStringAsync("https://grams.today/v1/gold?currency=USD"); Console.WriteLine(json);
// response headers X-RateLimit-Limit: 1200 · X-Quota-Used: 4187

Создан для масштаба и защищён ключом

Каждый запрос аутентифицируется вашим API-ключом и регулируется прозрачными заголовками лимита и квоты. Отслеживайте использование в реальном времени в панели.

  • Лимиты в минуту
  • Месячные квоты и графики использования
  • Отзыв / ротация ключей в любое время

Используйте с любимым языком

Готовые сниппеты для каждого популярного стека — без SDK, всего один HTTP-запрос.

Простые и гибкие тарифы

Начните бесплатно. Повышайте тариф при росте. Отменяйте в любое время.

Free

$0 /month
  • Real-time Gold Price
  • Multi-Currency Support
  • 100 calls / month
Начать бесплатно
Popular

Black Friday Mega Deal

$9 /month
  • Real-time Gold Price
  • Multi-Currency Support
  • Unlimited API Call
  • Single Server Configuration
Выбрать план

Ultimate

$129 /month
  • Real-time Gold Price
  • Multi-Currency Support
  • Live Support
  • Unlimited API Call
Выбрать план

Документация API

Базовый URL https://grams.today/v1 — каждый эндпоинт — GET и возвращает JSON.

🔐 Аутентификация

Все эндпоинты требуют ваш API-ключ — храните его в секрете. Передавайте его тремя способами:

curl "https://grams.today/v1/prices" -H "Authorization: Bearer YOUR_API_KEY" curl "https://grams.today/v1/prices" -H "X-API-Key: YOUR_API_KEY" curl "https://grams.today/v1/prices?api_key=YOUR_API_KEY"

Эндпоинты

GET /v1/prices — все металлы. GET /v1/gold — только золото.

GET /v1/convert — стоимость количества. Параметры: metal, weight, unit (g/oz/kg), karat, currency.

GET /v1/historical — дневная история. Параметры: metal, days, currency. GET /v1/symbols — поддерживаемые металлы и валюты.

{ "success": true, "base_currency": "SAR", "metals": { "XAU": { "ounce": 15823.95, "gram_24k": 508.75, "gram_22k": 466.36, "change": 123.8, "change_percent": 0.78 }, "XAG": { … }, "XPT": { … }, "XPD": { … } } }

Лимиты запросов

X-RateLimit-Limitзапросов в минуту по вашему тарифу
X-Quota-Limit / X-Quota-Usedмесячная квота и использование

Превышение лимита возвращает 429. Ошибки имеют вид { "success": false, "error": { "code", "message" } } с 401 (ключ), 422 (неверный параметр), 429 (лимит).

Примеры кода — для каждого популярного языка

Получите цену золота в реальном времени (GET /v1/gold) — переключите вкладку на свой язык:

curl "https://grams.today/v1/gold?currency=USD" \ -H "Authorization: Bearer YOUR_API_KEY"
import requests res = requests.get( "https://grams.today/v1/gold?currency=USD", headers={"Authorization": "Bearer YOUR_API_KEY"}, ) print(res.json())
const res = await fetch("https://grams.today/v1/gold?currency=USD", { headers: { Authorization: "Bearer YOUR_API_KEY" }, }); const data = await res.json(); console.log(data);
$ch = curl_init("https://grams.today/v1/gold?currency=USD"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, [ "Authorization: Bearer YOUR_API_KEY", ]); $data = json_decode(curl_exec($ch), true); print_r($data);
require "net/http" require "json" uri = URI("https://grams.today/v1/gold?currency=USD") req = Net::HTTP::Get.new(uri) req["Authorization"] = "Bearer YOUR_API_KEY" res = Net::HTTP.start(uri.host, uri.port, use_ssl: true) { |h| h.request(req) } puts JSON.parse(res.body)
req, _ := http.NewRequest("GET", "https://grams.today/v1/gold?currency=USD", nil) req.Header.Set("Authorization", "Bearer YOUR_API_KEY") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body))
HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://grams.today/v1/gold?currency=USD")) .header("Authorization", "Bearer YOUR_API_KEY") .build(); HttpResponse<String> res = HttpClient.newHttpClient() .send(request, HttpResponse.BodyHandlers.ofString()); System.out.println(res.body());
using var client = new HttpClient(); client.DefaultRequestHeaders.Add("Authorization", "Bearer YOUR_API_KEY"); string json = await client.GetStringAsync("https://grams.today/v1/gold?currency=USD"); Console.WriteLine(json);

Получить API-ключ →