လွယ်လွယ်ပြောရရင် API ဆိုတာ Program တစ်ခုက တခြား Program တစ်ခုဆီက အကူအညီတောင်းလို့ရအောင် လုပ်ပေးထားတဲ့ စနစ်တစ်ခုဖြစ်ပါတယ်။

ဥပမာ ကိုယ်က စားသောက်ဆိုင်တစ်ဆိုင်ကို သွားတယ်ဆိုပါတော့။ မီးဖိုခန်းထဲအထိ ကိုယ်တိုင်ဝင်ပြီး ဟင်းချက်စရာမလိုဘူး။ စားပွဲထိုးကို “ကြာဇံချက် တစ်ပွဲ” လို့ မှာလိုက်ရုံပဲ။ ခဏနေတော့ ဟင်းပွဲရောက်လာတယ်။

API လည်း ဒီအတိုင်းပါပဲ။ ကိုယ်သုံးနေတဲ့ App က ဝိတ်တာလိုမျိုး တခြား Server တွေဆီကို “ဒီအချက်အလက်လေး ပေးပါ” လို့ တောင်းပေးတယ်။ အဖြေရလာတော့ ကိုယ့်ဖုန်းပေါ်မှာ ပြန်ပြပေးတယ်။

ပုံစံချပြီး ပြောရရင်:

  • မင်း = App (တောင်းဆိုသူ၊ client)
  • ဝိတ်တာ = API
  • မီးဖိုခန်း = Server (အလုပ်လုပ်ပေးသူ)
  • Menu စာရွက် = Documentation (ဘာမှာလို့ ရလဲဆိုတဲ့ စာရင်း)
  • မှာစာ = Request၊ ဟင်းပွဲ = Response

မီးဖိုခန်းထဲ ဘာဖြစ်နေလဲ မင်း သိစရာမလိုဘူး။ ဝိတ်တာကို မှန်မှန်မှာတတ်ရင် ရပြီ။ API လည်း ဒီအတိုင်းပဲ — server နောက်ကွယ်က ရှုပ်ထွေးမှုတွေ မင်း မသိဘူး၊ သတ်မှတ်ထားတဲ့ နည်းနဲ့ တောင်းရင် အဖြေရတယ်။

တကယ့်ဥပမာနဲ့ ပြောရရင် ဖုန်းထဲက မိုးလေဝသ App ကို ကြည့်လိုက်။ အဲဒီ App ကိုယ်တိုင်က မိုးလေဝသ တိုင်းတာနေတာမဟုတ်ဘူး။ မိုးလေဝသဌာနရဲ့ Server ဆီကို API ကနေ “ရန်ကုန် မိုးအခြေအနေလေး ပြောပြပါ” လို့ လှမ်းတောင်းတာ။ အဖြေရလာတော့ ပြပေးတယ်။ ဒါပဲ။

“Continue with Google” ဆိုတဲ့ ခလုတ်ရော နှိပ်ဖူးတယ်မဟုတ်လား။ Website တစ်ခုက Google ရဲ့ API ကို “ဒီလူ Google account ရှိတာ ဟုတ်လား?” လို့ မေးတယ်။ ဟုတ်တယ်ဆိုမှ ဝင်ခွင့်ပေးတယ်။ မင်း password အသစ် မှတ်စရာမလိုဘူး။

ဖုန်းထဲက ငွေလွှဲ app ဆိုရင်လည်း ဘဏ် API နဲ့ ချိတ်ထားလို့သာ ငွေလွှဲလို့ရတာ။ မင်း နေ့တိုင်း API ဆယ်ခုမက သုံးနေတယ် — သတိမထားမိရုံပဲ။

API တွေ စကားပြောတဲ့ အသုံးအများဆုံးပုံစံက REST API။ ရိုးရိုးရှင်းရှင်း စည်းမျဉ်းလေးတွေ:

  • GET = ယူမယ် (ဝိတ်တာကို “menu ပြပါ”)
  • POST = ပို့မယ် / အသစ်ထည့်မယ် (“မှာစာ တင်မယ်”)
  • PUT = ပြင်မယ် (“ဟင်းကို အစပ်လျှော့ပေးပါ”)
  • DELETE = ဖျက်မယ် (“မှာတာ cancel လုပ်မယ်”)

Data ပုံစံကတော့ JSON လို့ ခေါ်တဲ့ စာသားပုံစံနဲ့ အပေးအယူလုပ်ကြတယ် — လူဖတ်လို့ရတဲ့ ရိုးရိုးစာသားပဲ။

Developer တွေအတွက် ဘာလို့ အရေးကြီးလဲဆိုတော့ အရာရာ ကိုယ်တိုင် ပြန်မရေးရလို့ပါ။ မြေပုံလိုချင်ရင် Google Maps API၊ ငွေချေချင်ရင် payment API၊ SMS ပို့ချင်ရင် SMS API — သူများ ဆောက်ပြီးသား အဆောက်အဦးပေါ် ကိုယ့်အိမ် ဆောက်သလိုပဲ။ ဒါကြောင့် startup တစ်ခု လူငါးယောက်နဲ့ ကမ္ဘာသုံးတဲ့ app ထွက်လာနိုင်တာ။

စမ်းကြည့်ချင်ရင် public API အလကားပေးတဲ့ site တွေ ရှိတယ် — weather, jokes, cat pictures API တွေနဲ့ ငါးမိနစ်အတွင်း ကိုယ့် program ကနေ data ဆွဲထုတ်ကြည့်လို့ရတယ်။

အတိုချုပ်ပြောရရင် API ဆိုတာ နည်းပညာလောကရဲ့ ဝိတ်တာတွေပဲ — မတူတဲ့ system တွေ အချင်းချင်း စကားပြောနိုင်အောင် လုပ်ပေးတဲ့ ကြားခံတွေ။ ဒီသဘောတရား နားလည်ထားရင် “integration”၊ “webhook”၊ “SDK” ဆိုတဲ့ စကားလုံးတွေ ကြားရင် ကြောက်စရာ မလိုတော့ဘူး — အားလုံး ဝိတ်တာအမျိုးမျိုးပဲ။ 🙂