← Viet Dataverse

Dữ liệu tài chính Việt Nam qua một API đơn giản

Gold, silver, CPI, GDP, lãi suất, tỷ giá, VN30 — tất cả từ một endpoint. Tích hợp trong vài phút với Python, JavaScript hoặc bất kỳ ngôn ngữ nào hỗ trợ HTTP.

Cài đặt API trong 4 bước

Làm theo thứ tự từ trên xuống — sau bước 4 bạn đã pull được dữ liệu thật vào code của mình.

Đăng ký tài khoản & lấy API key

API key là "chìa khoá" để gọi dữ liệu. Mỗi request đều cần key này.

  • và mở trang Developer để lấy key.
  • Tài khoản miễn phí được cấp ngay API key với hạn mức 1.000 request/tháng.
  • Nhấn "Tạo API key" → key đầy đủ (~43 ký tự) hiện ngay sau khi tạo. Bấm "Sao chép" để lấy key đầy đủ.
🔒 Giữ key bí mật. Không đăng key lên GitHub, không chia sẻ — mọi request bằng key của bạn đều bị tính vào quota tháng.

Gọi thử ngay trên trình duyệt (không cần code)

Cách nhanh nhất để kiểm tra key hoạt động: dán URL sau vào thanh địa chỉ trình duyệt, thay YOUR_API_KEY bằng key của bạn:

https://api.vietdataverse.online/api/v1/gold?type=SJC&period=1m&api_key=YOUR_API_KEY

Nếu thấy dữ liệu JSON trả về (có "success": true) là key đã chạy. Nếu thấy lỗi 401 → kiểm tra lại key ở trang Developer.

Tích hợp vào code của bạn

Khi gọi từ code, nên đặt key trong header X-API-Key thay vì trên URL (an toàn hơn). Chọn ngôn ngữ:

curl "https://api.vietdataverse.online/api/v1/gold?type=SJC&period=1m" \ -H "X-API-Key: YOUR_API_KEY"

Đọc kết quả & kiểm tra quota

Mọi response thành công đều có dạng:

{ "success": true, "type": "SJC", "period": "1m", "count": 30, "data": { "dates": [...], "buy_prices": [...], "sell_prices": [...] } }

Mỗi response kèm header cho biết còn bao nhiêu lượt gọi trong tháng: X-RateLimit-Remaining. Xem chi tiết ở mục Quota & Giới hạnMã lỗi bên dưới.

Ví dụ thực tế

Chọn use-case phù hợp — code sẵn sàng copy & chạy.

Tôi muốn pull giá vàng SJC vào Python mỗi ngày commodity

Lấy 30 ngày gần nhất, lọc theo SJC, lưu vào DataFrame:

import requests, pandas as pd API_KEY = "YOUR_API_KEY" BASE = "https://api.vietdataverse.online/api/v1" r = requests.get(f"{BASE}/gold", params={"type": "SJC", "period": "30d"}, headers={"X-API-Key": API_KEY}) df = pd.DataFrame(r.json()["data"]) df["period"] = pd.to_datetime(df["period"]) print(df[["period", "buy_price", "sell_price"]].tail(5))

Endpoint: GET /api/v1/gold · Params: type (SJC | DOJI | BTMC | PNJ), period (30d | 90d | 1y)

Tôi muốn theo dõi tỷ giá USD/VND của VCB hàng ngày rates
import requests r = requests.get( "https://api.vietdataverse.online/api/v1/sbv-rate", params={"bank": "VCB", "currency": "USD", "period": "30d"}, headers={"X-API-Key": "YOUR_API_KEY"}) for row in r.json()["data"][-5:]: print(f"{row['period']} mua={row['buy']:,} bán={row['sell']:,}")

Endpoint: GET /api/v1/sbv-rate · Params: bank (VCB | SBV), currency (USD | EUR | JPY…)

Tôi muốn so sánh lãi suất tiết kiệm ngân hàng theo kỳ hạn rates
import requests r = requests.get( "https://api.vietdataverse.online/api/v1/termdepo", params={"period": "90d"}, headers={"X-API-Key": "YOUR_API_KEY"}) data = r.json()["data"] latest = data[-1] # row mới nhất print(f"ACB — ngày {latest['period']}") print(f" 1 tháng: {latest.get('term_1m', '-')}%") print(f" 6 tháng: {latest.get('term_6m', '-')}%") print(f" 12 tháng: {latest.get('term_12m', '-')}%")

Endpoint: GET /api/v1/termdepo

Tôi muốn lấy CPI Việt Nam cho AI agent macro
import requests def get_vn_cpi_context(api_key: str) -> str: """Trả về context string để inject vào system prompt của AI agent.""" r = requests.get( "https://api.vietdataverse.online/api/v1/macro/cpi", params={"period": "1y"}, headers={"X-API-Key": api_key}) rows = r.json()["data"][-6:] # 6 tháng gần nhất lines = [f"- {d['period']}: CPI {d['value']}% YoY" for d in rows] return "CPI Việt Nam 6 tháng gần nhất:\n" + "\n".join(lines) print(get_vn_cpi_context("YOUR_API_KEY"))

Endpoint: GET /api/v1/macro/cpi

Tôi muốn nhập dữ liệu thẳng vào Excel — không cần code excel add-in

Cài Excel Add-in — chọn loại dữ liệu, nhấn "Nhập vào Excel", xong.

  1. Vào trang Account → tải manifest.xml
  2. Excel → Insert → Get Add-ins → Upload My Add-in → chọn file vừa tải
  3. Panel "Viet Dataverse" xuất hiện bên phải — nhập API key, chọn dữ liệu, nhấn Nhập vào Excel

Hỗ trợ: Vàng · Bạc · Tỷ giá · Lãi suất · CPI · VN30 OHLCV · Dữ liệu toàn cầu

Dùng dữ liệu trong Google Sheets

Không cần code — kéo giá vàng thẳng vào bảng tính bằng một công thức (các bộ dữ liệu khác đang được bổ sung).

Google Sheets có hàm IMPORTDATA() đọc trực tiếp dữ liệu CSV từ API. Vì hàm này không gửi được header, Viet Dataverse cho phép truyền API key ngay trên đường link qua tham số api_key:

=IMPORTDATA("https://api.vietdataverse.online/api/v1/gold?type=SJC&period=1m&format=csv&api_key=YOUR_API_KEY")
Xem hướng dẫn từng bước cho Google Sheets →

Authentication

Mọi request cần header X-API-Key với key miễn phí tạo ở trang Developer.

X-API-Key: Ab3xY7zK-mN0pQ2rS4tU6vW8xZ_1aB3cD5eF7gH9iJ

Lấy API key miễn phí tại trang Developer sau khi đăng nhập. Key được liên kết với tài khoản — không chia sẻ key để tránh bị tính quota.

Quota & Giới hạn

Quota reset vào ngày 1 hàng tháng (múi giờ Asia/Ho_Chi_Minh). Burst limit bảo vệ hệ thống.

Tài khoản miễn phí
1,000
requests/tháng · reset ngày 1 hàng tháng

Header phản hồi: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset (ISO 8601).

Mã lỗi

HTTPÝ nghĩaCách xử lý
401API key không hợp lệ hoặc đã bị thu hồiKiểm tra key tại trang Developer
429Vượt burst hoặc quota thángXem header Retry-After / X-RateLimit-Reset
500Lỗi serverThử lại sau — liên hệ support nếu kéo dài