Дзень 0
Падтвердзіць доступ
Стварыце ключ, выканайце адзін аўтарызаваны запыт і захавайце першую адказ з яго метаданымі.
Адкрыць крок →пасібнік па рабочым працэсе API
Выберыце вынік, найбліжэйшы да вашай задачы. Кожны шлях дае вам адзін працоўны запыт, інфармацыю пра тое, што павінен утрымліваць адказ, як праверыць яго працу, і наступны карысны крок.
Пяць практычных шляхоў
Selected: Harden a client
Ваш 14-днёвы API пробны перыяд
Мэта не ў тым, каб наведаць кожную старонку прадукту. Мэта — выканаць карысную аўтэнтыфікаваную працу API, вярнуцца ў іншы дзень і пакінуць з паўторным наборам даных або працоўным працэсам прыкладання.
Дзень 0
Стварыце ключ, выканайце адзін аўтарызаваны запыт і захавайце першую адказ з яго метаданымі.
Адкрыць крок →Дні 1-2
Вырашыце праблемы з аўтэнтыфікацыяй або фільтрам і ператварыце першы скрыпт у імянаваную паўторную задачу.
Адкрыць крок →Дні 3-4
Выкарыстоўвайце каляндар як другую сям'ю эндпоінтаў і заплануйце наступны карысны запуск API.
Адкрыць крок →Дні 5-7
Дадайце чаканні або невялікую групу макрасерый, затым стварыце адно захаванае параўнанне, табліцу або картку паказнікаў.
Адкрыць крок →Дні 8-10
Выберыце запланаваныя REST, SSE або вебхукі і выканайце яшчэ адзін паспяховы запуск API у іншы дзень.
Адкрыць крок →Дні 11-13
Дадайце таймауты, абмежаваныя паўторы, валідацыю адказу, бяспечнае лагаванне уступаў і маніторынг састарэлых даных.
Адкрыць крок →Дзень 14
Пацвердзіце, што API забяспечвае паўторную працу, якую ваша каманда захавае, затым выберыце наступны набор даных або працоўны працэс прыкладання.
Адкрыць крок →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.
Працоўны прыклад
Захоўвайце ваш ключ у FXMD_API_KEY; ніколі не ўстаўляйце яго ў сістэму кантролю версій.
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()
Очаківаны вынік: A bounded client that handles transient failures without retry storms and is ready to add ETag-based conditional refreshes.
Калі першы скрыпт становіцца рэальнай сістэмай
Выкарыстоўвайце гэтыя кіраўніцтвы, калі адказ памылковы, не вяртае даных або патрабуе вытворчых элементаў кіравання, такіх як кешыраванне, таймауты, паўторы і дастаўка падзей.
| Кіраўніцтва | Выкарыстоўвайце гэта, калі | Пачаць |
|---|---|---|
| Дыягнастыка памылковага або пустога адказу | Аддзяляйце праблемы аўтэнтыфікацыі, доступу, шляху, ліміту запытаў і даступнасці даных, не раскрываючы ваш ключ. | Адкрыць пасібнік → |
| Зрабіць кліента API гатовым да прадукцыі | Дадайце таймауты, абмежаваныя паўторы, кешыраванне, умоўныя запыты і правільную схему дастаўкі. | Адкрыць пасібнік → |