Ден 0
Докажи достъп
Създайте ключа, изпълнете една автентифицирана заявка и запишете първия отговор с неговите метаданни.
Отвори стъпка →Ръководство за API работен процес
Изберете резултата, най-близък до вашата работа. Всеки път ви дава една работна заявка, какво трябва да съдържа отговорът, как да проверите дали е проработило и следващата полезна стъпка.
Пет практически пътя
Selected: Harden a client
Вашият API пробен период от 14 дни
Целта не е да посетите всяка продуктова страница. Целта е да завършите полезна автентицирана API работа, да се върнете в друг ден и да си тръгнете с повтаряем набор от данни или работен процес на приложение.
Ден 0
Създайте ключа, изпълнете една автентифицирана заявка и запишете първия отговор с неговите метаданни.
Отвори стъпка →Дни 1-2
Решаване на проблеми с автентикация или филтриране и превръщане на първия скрипт в именована повтаряема задача.
Отвори стъпка →Дни 3-4
Използвайте календара като втори клас крайни точки и планирайте следващото полезно изпълнение на API.
Отвори стъпка →Дни 5-7
Добавете очаквания или малка група макро серии, след което генерирайте едно запазено сравнение, таблица или резултатска карта.
Отвори стъпка →Дни 8-10
Изберете планирани REST, SSE или webhooks и завършете още едно успешно изпълнение на API в друг ден.
Отвори стъпка →Дни 11-13
Добавете изчаквания (timeouts), ограничени повторения, валидация на отговори, безопасно логване на данни и мониторинг на остарели данни.
Отвори стъпка →Ден 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.
Когато първият скрипт стане реална система
Използвайте тези ръководства, когато отговорът е неуспешен, не връща данни или се нуждае от производствени контроли като кеширане, изчаквания (timeouts), повторни опити и доставка на събития.
| Ръководство | Използвайте го, когато | Старт |
|---|---|---|
| Диагностициране на неуспешен или празен отговор | Разделяне на проблеми с автентикация, достъп, път, ограничаване на честотата и наличност на данни без разкриване на вашия ключ. | Отворете ръководство → |
| Направете API клиент готов за производство | Добавете тайм-аути, ограничени повторни опити, кеширане, условни заявки и правилния модел на доставка. | Отворете ръководство → |