Fara-fari
Fara aiki a kowane harshe
API na FXMacroData wani standard JSON REST API ne. Duk wani harshe mai tallafin HTTP zai yi aiki. Endpoints na freemium time-series suna samuwa don kwanaki 90 mafi kwanan nan ba tare da mabuɗi ba. Ƙara mabuɗin Individual API don buɗe cikakken tarihin bayanai da rukunin endpoints na biya.
Tushen URL
https://api.fxmacrodata.com
Authentication
X-API-Mabuɗi: YOUR_API_KEY
Authorization: Bearer YOUR_API_KEY
?api_key=YOUR_API_KEY
Tsarin amsa
JSON (Content-Type: application/json)
openapi-generator-cli don samar da clients ta atomatik a cikin harsunan 40+.
Accept-Encoding: gzip a kowane buƙata (8–12× ƙananan payloads), sake amfani da ETag kanun amsa a If-None-Match a kan polls na maimaita (yana dawo da 304 Not Modified ba tare da jiki ba), sannan ka watsa ?limit=50 kan endpoints na alama guda kamar /v1/announcements/usd/inflation ko /v1/predictions/usd/inflation lokacin da kake bukatar layuka na baya kawai. Ga cikakken bayani →
core_pce yana wanzuwa don USD amma ba don kowane currency ba. Jeri kowane slug da currency yake goyan baya tare da GET /v1/data_catalogue/{currency}, misali /v1/data_catalogue/usd. 404 tare da error_code: NO_DATA_IN_REQUESTED_WINDOW yana nufin slug ɗin yana da inganci kuma taga ta ranar da aka nema kawai take fasali — faɗaɗa start_date/end_date maimakon canza URL.
data_quality object. Don backtests da rahoton cibiyoyi, bincika point_in_time_safe, has_announcement_datetime, source_type, da is_stale.
Kiran API na farko
Buƙatar Sauri
Fara da endpoint na sanarwa kai-tsaye. Authentication yana nan a cikin api_key paramita na query don gwajin browser da script kai tsaye.
curl "https://api.fxmacrodata.com/v1/announcements/eur/inflation?api_key=YOUR_API_KEY"
buƙatun Python
Bukatun Python API da za a iya kwafa
Yi amfani da waɗannan misalan REST kai tsaye lokacin da kake son buƙatar API ta asali maimakon wrapper na SDK. Mayez YOUR_API_KEY kawai a hanyoyin da aka kare.
consensus na kasuwar hauhawar farashin USD
Consensus, bincike, bankin tsakiya, IMF, da hasashen FXMacroData da aka haɗa da sanarwa da aka tabbatar.
import requests
url = "https://api.fxmacrodata.com/v1/predictions/usd/inflation"
response = requests.get(url, timeout=20)
response.raise_for_status()
payload = response.json()
print(payload.get("data", payload))
haihuwar farashin kaya ta USD tare da lokutan sanarwa
Bayanan hauhawar farashi na jama'a na USD don binciken tarihin lokaci-da-lokaci.
import requests
url = "https://api.fxmacrodata.com/v1/announcements/usd/inflation"
response = requests.get(url, timeout=20)
response.raise_for_status()
payload = response.json()
print(payload.get("data", payload))
tarihin spot na EUR/USD FX
Tarihin farashin FX na yau da kullum don taswirorin ma'aurata, samfuran, da juyin fitarwa.
import requests
url = "https://api.fxmacrodata.com/v1/forex/eur/usd"
params = {
"api_key": "YOUR_API_KEY",
}
response = requests.get(url, params=params, timeout=20)
response.raise_for_status()
payload = response.json()
print(payload.get("data", payload))
tarihin policy-rate na AUD
Tarihin shawarwarin bankin tsakiya tare da lokacin fitowa don bincike ba tare da kallo na gaba ba.
import requests
url = "https://api.fxmacrodata.com/v1/announcements/aud/policy_rate"
params = {
"api_key": "YOUR_API_KEY",
}
response = requests.get(url, params=params, timeout=20)
response.raise_for_status()
payload = response.json()
print(payload.get("data", payload))
tsarin fitarwa na JPY na gaba
Abubuwan macro masu zuwa tare da UTC, filin yanayin kasuwa, da filin lokacin da aka nema don tsara gargadi, sabunta samfura, da binciken ciniki.
import requests
url = "https://api.fxmacrodata.com/v1/calendar/jpy"
params = {
"timezone": "Asia/Tokyo",
"api_key": "YOUR_API_KEY",
}
response = requests.get(url, params=params, timeout=20)
response.raise_for_status()
payload = response.json()
print(payload.get("data", payload))
Farashin kayan zinare
Sajen lokutan kara-karaye na hukuma tare da darajar yau da kullum da fannonin canji.
import requests
url = "https://api.fxmacrodata.com/v1/commodities/gold"
params = {
"api_key": "YOUR_API_KEY",
}
response = requests.get(url, params=params, timeout=20)
response.raise_for_status()
payload = response.json()
print(payload.get("data", payload))
Python
Sanya na hukuma fxmacrodata ruku-ruku daga PyPI. Abokan ciniki na sync da async, fitarwa da pandas-ready.
Yin amfani da SDK
from fxmacrodata import Client client = Client(api_key="YOUR_API_KEY") # USD inflation — no-key evaluation, up to 100 requests/day data = client.get_indicator("usd", "inflation") # EUR policy rate — requires API key rate = client.get_indicator("eur", "policy_rate") # Forex price data — requires API key fx = client.get_fx_price("usd", "jpy")
Yin amfani da REST API kai tsaye
import requests resp = requests.get( "https://api.fxmacrodata.com/v1/announcements/usd/inflation", timeout=30, ) resp.raise_for_status() payload = resp.json() print(payload["data_quality"]["point_in_time_safe"], payload["data"][0])
Abokin ciniki na Async
import asyncio from fxmacrodata import AsyncClient async def main(): async with AsyncClient(api_key="YOUR_API_KEY") as client: data = await client.get_indicator("eur", "inflation") print(data) asyncio.run(main())
Hasashen & Hasashen gaba
The /v1/predictions/{currency}/{indicator} endpoint yana nuna bayanan hasashe daga binciken consensus na kasuwa, hasashen bankin alkali, IMF World Economic Outlook, da binciken masu hasashen kwararru. Ana neman hasashe don wani takamaiman kuɗi da nuna, kamar https://api.fxmacrodata.com/v1/predictions/usd/inflation; ba a goyan bayan buƙatun hasashen kuɗi kawai. Kowane hasashe an haɗa shi ne da sanarwarsa ta hanyar announcement_id, don haka za ka iya haɗa hasashe da lura da aka tabbatar.
prediction_type="fxmacrodata" kimanin FXMacroData ne; ainihin consensus da aka tattara an sanya masa alama market_consensus. Samun hasashe ya bambanta dangane da fitowa — duba matrisin rufar. Don binciken ba tare da kallon gaba ba, bi jagoran point-in-time backtesting.
Python — samo hasashen kuma haɗa su da gaskiyar lamari
import requests # Predictions for USD inflation — no-key evaluation, up to 100 requests/day preds = requests.get( "https://api.fxmacrodata.com/v1/predictions/usd/inflation", timeout=30, ).json() for group in preds["data"]: print(group["announcement_id"], group["date"]) for p in group["predictions"]: print(f" {p['prediction_source_label']}: {p['predicted_value']}") # Filter by prediction type market = requests.get( "https://api.fxmacrodata.com/v1/predictions/usd/inflation", params={"prediction_type": "market_consensus"}, timeout=30, ).json() # Join predictions with actuals using announcement_id actuals = requests.get( "https://api.fxmacrodata.com/v1/announcements/usd/inflation", timeout=30, ).json() actuals_by_id = {row["announcement_id"]: row for row in actuals["data"]} for group in preds["data"]: actual = actuals_by_id.get(group["announcement_id"]) if actual: print(f"{group['date']}: actual={actual['val']}, forecast={group['predictions'][0]['predicted_value']}")
cURL — nemo hasashen ta hanyar nau'i
# All USD inflation predictions — free curl "https://api.fxmacrodata.com/v1/predictions/usd/inflation" # Filter by prediction type: market_consensus, imf_weo, central_bank_forecast, survey curl "https://api.fxmacrodata.com/v1/predictions/usd/inflation?prediction_type=market_consensus" # EUR predictions — requires API key curl "https://api.fxmacrodata.com/v1/predictions/eur/inflation?api_key=YOUR_API_KEY" # USD policy-rate predictions curl "https://api.fxmacrodata.com/v1/predictions/usd/policy_rate"
Tabbatar da nau'ikan hasashe
| prediction_type | Bayani |
|---|---|
| market_consensus | Hadin ra'ayin kasuwa ko na masana tattalin arziki, inda ake samu |
| market_prediction | Hasashen maki na ƙwararren mai hasashe |
| model_nowcast | Nowcast na samfurin bankin tsakiya ko bankin ajiya |
| bincike | Binciken bankin tsakiya na ƙwararrun masu hasashe (misali ECB SPF) |
| central_bank_forecast | Hasashen bankin alkali na hukuma (misali RBNZ MPS, BoC MPR) |
| central_bank_projection | Hasashen hukuma na bankin central |
| imf_weo | Hasashen IMF World Economic Outlook |
| fxmacrodata | Hasashen da FXMacroData ya samar wanda ya haɗa da jagorancin bankin alkali, bincike, da yanayin tarihi |
cURL
Ba a buƙatar shigarwa. Yana aiki daga kowane terminal.
# USD inflation — no-key evaluation, up to 100 requests/day curl "https://api.fxmacrodata.com/v1/announcements/usd/inflation" # EUR policy rate — pass your API key as a query parameter curl "https://api.fxmacrodata.com/v1/announcements/eur/policy_rate?api_key=YOUR_API_KEY" # Release calendar for Australia curl "https://api.fxmacrodata.com/v1/calendar/aud?api_key=YOUR_API_KEY" # Release calendar converted to a requested IANA timezone curl "https://api.fxmacrodata.com/v1/calendar/usd?indicator=gdp&timezone=America/Sao_Paulo" # Forex price history — requires API key curl "https://api.fxmacrodata.com/v1/forex/usd/jpy?api_key=YOUR_API_KEY" # Data catalogue (discover available indicators for USD) curl "https://api.fxmacrodata.com/v1/data_catalogue/usd"
JavaScript / TypeScript
Yana aiki a Node.js (18+), Deno, Bun, da browsers na zamani tare da Fetch API.
Abokin amfani na npm na hukuma
import { FXMacroDataClient } from "@fxmacrodata/client"; const client = new FXMacroDataClient({ apiKey: "YOUR_API_KEY", }); // Public endpoint example const usdInflation = await client.announcements("usd", "inflation"); // Non-USD endpoint example (requires paid key) const eurRate = await client.announcements("eur", "policy_rate"); console.log(usdInflation, eurRate);
Yin amfani da Fetch kai tsaye
// USD inflation — no-key evaluation, up to 100 requests/day const res = await fetch( "https://api.fxmacrodata.com/v1/announcements/usd/inflation" ); const data = await res.json(); console.log(data); // With API key for non-USD const API_KEY = "YOUR_API_KEY"; const eur = await fetch( `https://api.fxmacrodata.com/v1/announcements/eur/policy_rate?api_key=${API_KEY}` ); console.log(await eur.json());
Je
Ba a buƙatar packages na waje — library na standard yana sarrafa komai.
package main import ( "encoding/json" "fmt" "net/http" "io" ) func main() { // USD inflation — no-key evaluation, up to 100 requests/day resp, err := http.Get("https://api.fxmacrodata.com/v1/announcements/usd/inflation") if err != nil { panic(err) } defer resp.Body.Close() body, _ := io.ReadAll(resp.Body) var result map[string]interface{} json.Unmarshal(body, &result;) fmt.Println(result) }
R
Yana buƙatar httr da jsonlite.
library(httr) library(jsonlite) # USD inflation — no-key evaluation, up to 100 requests/day res <- GET("https://api.fxmacrodata.com/v1/announcements/usd/inflation") data <- fromJSON(content(res, "text", encoding = "UTF-8")) # Convert to data frame df <- as.data.frame(data$data) head(df) # With API key for non-USD eur <- GET( "https://api.fxmacrodata.com/v1/announcements/eur/policy_rate", query = list(api_key = "YOUR_API_KEY") ) print(fromJSON(content(eur, "text")))
Java
Amfani java.net.http (Java 11+). Ba a bukatar libraries na waje.
import java.net.URI; import java.net.http.HttpClient; import java.net.http.HttpRequest; import java.net.http.HttpResponse; public class FXMacroDataExample { public static void main(String[] args) throws Exception { var client = HttpClient.newHttpClient(); var request = HttpRequest.newBuilder() .uri(URI.create("https://api.fxmacrodata.com/v1/announcements/usd/inflation")) .build(); var response = client.send(request, HttpResponse.BodyHandlers.ofString()); System.out.println(response.body()); } }
C# / .NET
Amfani HttpClient (.NET 6+).
using System.Net.Http; using System.Text.Json; var client = new HttpClient(); // USD inflation — no-key evaluation, up to 100 requests/day var json = await client.GetStringAsync( "https://api.fxmacrodata.com/v1/announcements/usd/inflation" ); var doc = JsonDocument.Parse(json); Console.WriteLine(doc.RootElement);
MATLAB
Yana amfani da wanda aka gina webread aiki.
% USD inflation — no-key evaluation, up to 100 requests/day data = webread('https://api.fxmacrodata.com/v1/announcements/usd/inflation'); disp(data); % With API key for non-USD opts = weboptions('Timeout', 30); url = 'https://api.fxmacrodata.com/v1/announcements/eur/policy_rate?api_key=YOUR_API_KEY'; eur = webread(url, opts); disp(eur);
Ƙirƙiri typed client don kowane yare
FXMacroData API yana wallafa cikakken Siffar OpenAPI 3.1. Yi amfani da shi tare da openapi-generator don samar da clients masu cikakken nau'i don Kotlin, Swift, Rust, Dart, Ruby, PHP, da 40+ wasu harsunan.
# Install the openapi-generator CLI npm install @openapitools/openapi-generator-cli -g # Generate a Go client openapi-generator-cli generate \ -i https://api.fxmacrodata.com/openapi.json \ -g go \ -o ./fxmacrodata-go-client # Generate a Java client openapi-generator-cli generate \ -i https://api.fxmacrodata.com/openapi.json \ -g java \ -o ./fxmacrodata-java-client
Kuna shirye don gina?
endpoints na USD suna goyan bayan gwajin ba tare da mabuɗi ba har zuwa 100 buƙatu/rana. Yi rijistar biya don samun ƙarin iyaka da damar samun kuɗaɗe da dama.