Hari 0
Buktikan akses
Cipta kunci, lengkapkan satu permintaan yang diautentikasi, dan simpan respons pertama bersama metadatanya.
Buka langkah →panduan aliran kerja API
Pilih hasil yang paling hampir dengan tugas anda. Setiap laluan memberi anda satu permintaan kerja, apa yang harus terkandung dalam respons, cara menyemak ia berfungsi, dan langkah berguna seterusnya.
Lima laluan praktikal
Selected: Harden a client
Percubaan API 14-hari anda
Matlamatnya bukan untuk melawat setiap halaman produk. Ia adalah untuk melengkapkan kerja API berautentikasi yang berguna, kembali pada hari lain, dan keluar dengan set data atau aliran kerja aplikasi yang boleh diulang.
Hari 0
Cipta kunci, lengkapkan satu permintaan yang diautentikasi, dan simpan respons pertama bersama metadatanya.
Buka langkah →Hari 1-2
Selesaikan masalah pengesahan atau penapis dan tukar skrip pertama menjadi tugas berulang bernama.
Buka langkah →Hari 3-4
Gunakan kalendar sebagai keluarga titik akhir kedua dan jadualkan larian API berguna seterusnya.
Buka langkah →Hari 5-7
Tambah jangkaan atau kumpulan kecil siri makro, kemudian hasilkan satu perbandingan, jadual, atau skor kad yang disimpan.
Buka langkah →Hari 8-10
Pilih REST, SSE, atau webhook yang dijadualkan dan lengkapkan satu lagi larian API yang berjaya pada hari yang berbeza.
Buka langkah →Hari 11-13
Tambah timeout, percubaan semula terhad, pengesahan respons, logging selamat-kredensial, dan pemantauan data lapuk.
Buka langkah →Hari 14
Sahkan bahawa API membekalkan pekerjaan yang boleh diulang yang akan dikekalkan oleh pasukan anda, kemudian pilih set data atau aliran kerja aplikasi seterusnya.
Buka langkah →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.
Contoh berfungsi
Kekalkan kunci anda dalam FXMD_API_KEY; jangan sekali-kali tampalkannya ke dalam kawalan sumber.
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()
Hasil yang dijangka: A bounded client that handles transient failures without retry storms and is ready to add ETag-based conditional refreshes.
Apabila skrip pertama menjadi sistem sebenar
Gunakan panduan ini apabila respons gagal, tidak mengembalikan data, atau memerlukan kawalan pengeluaran seperti caching, timeout, percubaan semula, dan penghantaran acara.
| Panduan | Gunakan ia apabila | Mula |
|---|---|---|
| Diagnosis respons yang gagal atau kosong | Asingkan masalah pengesahan, akses, laluan, had kadar, dan ketersediaan data tanpa mendedahkan kunci anda. | Buka panduan → |
| Jadikan klien API sedia untuk pengeluaran | Tambah timeout, percubaan semula terhad, caching, permintaan bersyarat, dan corak penghantaran yang betul. | Buka panduan → |