ìtọ́sọ́nà iṣẹ́ (workflow guide) API

Kí ni o fẹ́ kọ́?

Yan àbájáde tí ó súnmọ́ iṣẹ́ rẹ jùlọ. Ọ̀nà kọ̀ọ̀kan ń fún ọ ní ìbéèrè iṣẹ́ kan, ohun tí ìdáhùn náà gbọ́dọ̀ ní, bí o ṣe lè ṣàyẹ̀wò pé ó ṣiṣẹ́, àti ìgbésẹ̀ tókàn tí ó ṣe pàtàkì.

Àwọn ọ̀nà márùn-ún tó ṣe kedere

Bẹ̀rẹ̀ pẹ̀lú àbájáde, kì í ṣe àkójọpọ̀ endpoint.

Selected: Harden a client

Àyè ìdánwò API rẹ ti 14 ọjọ́

Yí padà láti ìbéèrè àkọ́kọ́ sí iṣẹ́ tó yẹ kí a tọ́jú.

Ète náà kì í ṣe láti bẹ ọjọ́-ojú-iṣẹ́ gbogbo. Ó jẹ́ láti parí iṣẹ́ API tí ó ní ìwẹ̀nùmọ́ tó ṣe kedere, padà wá ní ọjọ́ mìíràn, kí o sì jáde pẹ̀lú àkọsílẹ̀ data tabi ìlànà iṣẹ́ tí a lè ṣe nígbà gbogbo.

Ṣàyẹ̀ wò ìtẹ̀síwájú API

Ọjọ́ 0

Ṣàfihàn ìyàtọ̀ (Prove access)

Ṣẹ̀dá kii, parí ìbéèrè kan tí a ti fọwọ́ sí, kí o sì tọ́jú ìdáhùn àkọ́kọ́ pẹ̀lú metadata rẹ̀.

Ṣí ìgbésẹ̀ →

Ọjọ́ 1-2

Sọ request náà di èyí tí ó le ṣeé gbẹ́kẹ̀lé

Yanjú ìṣòro ìwẹ̀nùmọ́ (authentication) tabi sẹ́ńtọ́, kí o sì sọ script àkọ́kọ́ di iṣẹ́ tí a lè ṣe nígbà gbogbo tí ó ní orúkọ.

Ṣí ìgbésẹ̀ →

Ọjọ́ 3-4

Fi àkókò ìdirimọ̀ kún un

Lo kalẹ́ńdà gẹ́gẹ́ bí ẹgbẹ́ endpoint kejì kí o sì ṣètò ìgbà tó bá yẹ fún iṣẹ́ API tó ń bọ̀.

Ṣí ìgbésẹ̀ →

Ọjọ́ 5-7

Kọ iṣẹ́ ìwádìí náà

Fi àwọn ìrètí tàbí ẹgbẹ́ kékeré ti macro series kún un, lẹ́yìn náà ṣẹ̀dá ìdánilẹ́ko àti tábì scorecard kan tí a ti tọ́jú.

Ṣí ìgbésẹ̀ →

Ọjọ́ 8-10

Ṣe àtúnṣe àwọn ìròyìn nípa ìlọsíwájú (Automate updates)

Yan REST, SSE, tàbí webhooks tí a ṣètò, kí o sì parí ìgbésẹ̀ API mìíràn ní ọjọ́ mìíràn.

Ṣí ìgbésẹ̀ →

Ọjọ́ 11-13

Mú kí client lágbára

Fi àwọn timeout, àwọn ìdánwò rírorò (bounded retries), ìdánwò ìdáhùn, logging tí ó wà ní ààbò fún credential, àti ìṣọ́ data tó ti kọjá kún un.

Ṣí ìgbésẹ̀ →

Ọjọ́ 14

Ṣàyẹ̀ ìdílé (evidence)

Fìdí rẹ̀ múlẹ̀ pé API ń pèsè iṣẹ́ tó lè ṣe nílọ́ọ̀kan tí ẹgbẹ́ rẹ yóò tọ́jú, lẹ́yìn náà yan àwọn data tuntun tàbí iṣẹ́ ìlànà tuntun.

Ṣí ìgbésẹ̀ →

Production readiness

Sọ API client di èyí tí ó ṣe tán fún iṣẹ́ (production-ready)

Production reliability comes from treating status codes differently, keeping retries bounded, reusing ETags, and choosing scheduled REST, SSE, or webhooks for the job.

25 minutes Production pattern ìpolongochangesstreamwebhooks

Àpẹẹrẹ tó ń ṣiṣẹ́

Tọ́jú kẹ́ẹ̀kùú rẹ nínú FXMD_API_KEY; má ṣe fi sínú ìṣọ́ ìsọfúnni (source control).

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()

Àbájáde tó wà lọ́wọ́: A bounded client that handles transient failures without retry storms and is ready to add ETag-based conditional refreshes.

Nígbà tí script àkọ́kọ́ bá di eto gidi

Ìṣèlú ìṣòro àti ìtọ́sọ́nà ìṣẹ́ ìgbàpọ̀ (production)

Lo àwọn ìtọ́sọ́nà wọ̀nyí nígbà tí ìdáhùn bá kùnà, tí kò bá mú data wá, tàbí tí ó bá nílò ìṣàkóso iṣẹ́ bíi caching, timeouts, retries, àti ìfúni ní ìsọfúnni.

Ìtọ́sọ́nàLo rẹ̀ nígbà tíBẹ̀rẹ̀
Ṣàyẹ̀wò ìdáhùn tí kò ṣiṣẹ́ tàbí èyí tí kò ní nǹkan Yanjú ìṣòro ìwẹ̀nùmọ́, ìyàgbà, ọ̀nà, ìlimitẹ̀ iṣẹ́, ati ìwàstí data láìfi kẹ́ẹ̀kùú rẹ hàn. Ṣí ìtọ́sọ́nà →
Sọ API client di èyí tí ó ṣe tán fún iṣẹ́ (production-ready) Fi àwọn timeout, àwọn ìdapọ̀ ìdánwò (bounded retries), caching, àwọn ìbéèrè tí ó ní àwọ̀n (conditional requests), àti ọ̀nà ìfúnni tó tọ̀nà kún un. Ṣí ìtọ́sọ́nà →