Zi 0
Dovedește accesul
Creați cheia, efectuați o singură cerere autentificată și salvați primul răspuns împreună cu metadatele sale.
Deschide pasul →ghid de flux de lucru API
Alege rezultatul cel mai apropiat de activitatea ta. Fiecare cale îți oferă o cerere funcțională, ceea ce ar trebui să conțină răspunsul, cum să verifici dacă a funcționat și următorul pas util.
Cinci căi practice
Selected: Harden a client
Perioada ta de probă API de 14 zile
Scopul nu este de a vizita fiecare pagină de produs. Este de a finaliza o lucrare API autentificată utilă, de a reveni în altă zi și de a pleca cu un set de date sau un flux de lucru al aplicației repetabil.
Zi 0
Creați cheia, efectuați o singură cerere autentificată și salvați primul răspuns împreună cu metadatele sale.
Deschide pasul →Zile 1-2
Rezolvă problemele de autentificare sau filtrare și transformă primul script într-un job repetabil numit.
Deschide pasul →Zile 3-4
Utilizați calendarul ca o a doua familie de endpoint-uri și programați următoarea rulare utilă API.
Deschide pasul →Zile 5-7
Adaugă așteptări sau un grup mic de serii macro, apoi produce o singură comparație salvată, tabel sau scorecard.
Deschide pasul →Zile 8-10
Alege REST, SSE programate sau webhooks și finalizează o altă rulare API reușită într-o altă zi.
Deschide pasul →Zile 11-13
Adaugă timeout-uri, reîncercări limitate, validarea răspunsului, jurnalizare sigură a credențialelor și monitorizarea datelor învechite.
Deschide pasul →Ziua 14
Confirmați că API furnizează un job repetabil pe care echipa dvs. îl va păstra, apoi alegeți următorul set de date sau flux de lucru al aplicației.
Deschide pasul →Production readiness
Production reliability comes from treating status codes differently, keeping retries bounded, reusing ETags, and choosing scheduled REST, SSE, or webhooks for the job.
Exemplu funcțional
Păstrați cheia în FXMD_API_KEY; nu o lipi niciodată în controlul surselor.
import os
import requests
from urllib3.util.retry import Retry
session = requests.Session()
retry = Retry(total=3, backoff_factor=0.5, status_forcelist=(429, 502, 503, 504))
session.mount("https://", requests.adapters.HTTPAdapter(max_retries=retry))
response = session.get(
"https://api.fxmacrodata.com/v1/announcements/eur/inflation",
params={"api_key": os.environ["FXMD_API_KEY"], "limit": 5},
headers={"Accept-Encoding": "gzip"},
timeout=(3.05, 20),
)
response.raise_for_status()
Rezultat așteptat: A bounded client that handles transient failures without retry storms and is ready to add ETag-based conditional refreshes.
Când primul script devine un sistem real
Utilizați aceste ghiduri atunci când un răspuns eșuează, nu returnează date sau necesită controale de producție precum cache-ul, timeout-urile, reîncercările și livrarea de evenimente.
| Ghid | Utilizați-l când | Start |
|---|---|---|
| Diagnostichează un răspuns eșuat sau gol | Separă problemele de autentificare, acces, cale, limită de rată și disponibilitatea datelor fără a expune cheia. | Deschide ghidul → |
| Faceți un client API gata de producție | Adaugă timeout-uri, reîncercări limitate, caching, cereri condiționate și modelul de livrare corect. | Deschide ghidul → |