ما هي الواجهة البرمجية API؟ شرح بسيط لغير المبرمجين
الواجهة البرمجية API طريقة متفق عليها تتحدث بها البرامج مع بعضها. بفضلها يعرض تطبيق الطقس الحرارة ويدفع المتجر عبر بوابة الدفع.
الواجهة البرمجية (API) مجموعة قواعد تسمح لبرنامج بأن يطلب بيانات أو خدمة من برنامج آخر بطريقة منظمة، دون أن يعرف تفاصيله الداخلية. مثل نادل المطعم: تطلب منه، وهو ينقل الطلب إلى المطبخ ويعيد إليك الطبق.
محتويات المقال
ما هي الواجهة البرمجية؟
الواجهة البرمجية للتطبيقات (Application Programming Interface) أو API طريقة متفق عليها لكي يتحدث برنامج مع برنامج آخر. البرنامج الأول يرسل طلبًا بشكل محدد، والثاني يعيد ردًا بشكل محدد أيضًا.
تشبيه المطعم
أنت في مطعم. لا تدخل المطبخ ولا تعرف كيف يُطبخ الطعام. تنظر في قائمة الطعام وتطلب من النادل، فينقل الطلب إلى المطبخ ويعيد إليك الطبق.
- قائمة الطعام = توثيق API: ما الذي يمكنك طلبه وكيف.
- النادل = API نفسها.
- المطبخ = الخادم وقاعدة البيانات.
أمثلة تستخدمها دون أن تعرف
- تطبيق الطقس في هاتفك لا يقيس الحرارة، بل يطلبها من API لخدمة أرصاد.
- زر «تسجيل الدخول بحساب Google» في موقع ما يستخدم API من Google للتحقق منك.
- الدفع في متجر إلكتروني يمر عبر API لبوابة دفع مثل Stripe أو PayPal.
- خريطة داخل موقع مطعم تأتي من API لخرائط Google.
- أدوات الذكاء الاصطناعي داخل البرامج تتصل غالبًا بـ API لنماذج مثل Claude أو ChatGPT.
كيف يبدو طلب API؟
أغلب واجهات الويب اليوم تعمل بأسلوب يسمى REST، وتستخدم عناوين مثل عناوين المواقع. مثال مبسط:
GET https://api.example.com/weather?city=Riyadhوالرد يأتي غالبًا بصيغة JSON، وهي صيغة نصية منظمة:
{ "city": "Riyadh", "temp": 31, "unit": "C" }البرنامج يقرأ الرد ويعرضه لك بشكل جميل.
ما هو مفتاح API؟
كثير من الخدمات تطلب مفتاح API (API Key): رمز طويل يثبت هوية البرنامج الذي يرسل الطلب. تستخدمه الخدمة لتعرف من أنت، وكم طلبًا أرسلت، وكم تدفع.
لماذا تهم الواجهات البرمجية؟
- توفر الوقت: المطور لا يبني خرائط أو نظام دفع من الصفر.
- تربط الخدمات: متجرك يرسل الطلبات إلى شركة الشحن تلقائيًا.
- تحمي البيانات: البرنامج الخارجي يصل فقط إلى ما تسمح به الواجهة، لا إلى قاعدة البيانات كلها.
أنواع شائعة
| النوع | باختصار |
|---|---|
| REST | الأكثر انتشارًا في الويب، يستخدم عناوين وطلبات HTTP |
| GraphQL | يطلب فيه البرنامج الحقول التي يحتاجها بالضبط |
| Webhook | العكس: الخدمة ترسل إليك إشعارًا عند حدوث شيء، مثل دفعة جديدة |
| واجهات المكتبات | دوال داخل لغة برمجة أو نظام تشغيل |
الأسئلة الشائعة
هل الـ API برنامج أستطيع تنزيله؟
لا. هي طريقة اتصال يوفرها برنامج أو خدمة، ويستخدمها المبرمجون من داخل برامجهم.
هل استخدام API مجاني؟
بعضها مجاني بحد معين من الطلبات، وكثير منها مدفوع حسب الاستخدام، مثل واجهات الذكاء الاصطناعي التي تحسب التكلفة حسب الرموز (Tokens).
ما الفرق بين API والتطبيق؟
التطبيق ما تراه وتستخدمه، والـ API طريقة خفية يتواصل بها التطبيق مع الخدمات خلفه.
الخلاصة
- الواجهة البرمجية طريقة منظمة لتتحدث البرامج مع بعضها.
- تعمل بطلب ورد، والرد غالبًا بصيغة JSON.
- مفتاح API سر يجب حمايته مثل كلمة المرور.