الـ API (واجهة برمجة التطبيقات) هو اتفاق مكتوب يحدد كيف يطلب برنامج شيئاً من برنامج آخر وما الرد الذي سيصله. عندما يدفع عميل في متجرك، يرسل تطبيقك طلباً إلى API بوابة الدفع فيعود الرد: تمّت العملية أو رُفضت. أسرع طريقة لفهمه أن تبني تطبيقاً حقيقياً في فنّان يربط الدفع وواتساب وتسجيل الدخول، ثم تتتبّع كل طلب ورد بنفسك.
- ما هو الـ API
- شرح API بالعربي للمبتدئين
- ايش يعني API في التطبيقات
- كيف اربط بوابة دفع بتطبيقي
- الفرق بين API و webhook
- كيف يشتغل API
ما هو الـ API بجملة واحدة؟
الـ API اختصار لعبارة Application Programming Interface، أي «واجهة برمجة التطبيقات». بجملة واحدة: هو الطريقة المتفق عليها التي يطلب بها برنامج شيئاً من برنامج آخر، ويعرف مسبقاً شكل الرد الذي سيصله.
تخيّل نافذة الطلبات في مطعم. أنت لا تدخل المطبخ ولا تعرف كيف يُطهى الطعام. تقول طلبك بطريقة محددة: «برجر واحد بدون بصل»، فيعود لك صحن بشكل تعرفه. النافذة هي الـ API، والمطبخ هو الخدمة الأخرى، وأنت تطبيقك.
رسم توضيحيهذا الشرح موجّه لمن يريد أن يفهم كيف تعمل البرمجيات فعلاً: طالب، أو صاحب متجر، أو مؤسس يبني أول تطبيق. وبدل الأمثلة المجرّدة سنستخدم تطبيقاً تعرفه: متجر صغير يبيع ويستلم الدفع ويرسل إشعارات، أو تطبيق حجز مواعيد.
أين توجد الـ APIs في تطبيقك أنت؟
افتح أي متجر إلكتروني حديث وستجد أن أغلب ما يحدث فيه طلبات تذهب وتعود بين تطبيقك وخدمات أخرى. هذه أشهرها في متجر أو تطبيق حجز:
| اللحظة في تطبيقك | من يتكلم مع من | ما الذي يعود |
|---|---|---|
| العميل يدفع بمدى أو Apple Pay | تطبيقك مع بوابة الدفع | نجحت العملية أو رُفضت، مع رقم مرجعي |
| العميل يدخل برقم جواله | تطبيقك مع خدمة الرسائل | رمز تحقق يصل للجوال، ثم تأكيد صحته |
| تأكيد الطلب على واتساب | تطبيقك مع واتساب | تم الإرسال أو فشل |
| اختيار موقع التوصيل | تطبيقك مع خدمة الخرائط | إحداثيات وعنوان مقروء |
| عرض المنتجات أو المواعيد | واجهة تطبيقك مع الخادم الخاص به | قائمة بالمنتجات وأسعارها أو بالمواعيد المتاحة |
لاحظ الصف الأخير: تطبيقك نفسه له API داخلي. الجزء الذي يعمل في المتصفح أو الجوال يطلب البيانات من الجزء الذي يعمل على الخادم. إن أردت فهم هذا الفصل بين الجزأين فاقرأ الواجهة الأمامية والخلفية.
كيف يعمل طلب الـ API خطوة بخطوة؟
لنأخذ لحظة الدفع في متجرك. العميل ضغط «ادفع الآن» على سلة قيمتها 250 ريالاً. هذا ما يحدث خلال ثوانٍ:
- 1العنوان
يعرف تطبيقك عنوان خدمة الدفع، مثل عنوان مكتب تذهب إليه بطلبك.
- 2الطلب
يرسل تطبيقك ما تطلبه البوابة بالضبط: المبلغ، والعملة، ورقم الطلب، ووسيلة الدفع.
- 3الهوية
يرفق تطبيقك مفتاحاً سرياً يثبت أنه متجرك أنت وليس أحداً ينتحل اسمك.
- 4الرد
تعود البوابة برد بشكل معروف: الحالة (ناجح أو مرفوض)، ورقم مرجعي، وسبب الرفض إن وُجد.
- 5التصرف
يقرأ تطبيقك الرد فيغيّر حالة الطلب إلى «مدفوع» ويعرض صفحة الشكر، أو يطلب من العميل المحاولة مرة أخرى.
- الطلب
- ما يرسله تطبيقك: ماذا يريد، وبأي بيانات
- الرد
- ما يعود: النتيجة والبيانات أو رسالة خطأ
- المفتاح
- إثبات أن الطلب صادر منك فعلاً
- التوثيق
- دليل الخدمة الذي يشرح ما تقبله وما ترد به
كل API في العالم يتبع هذه الفكرة نفسها مهما اختلفت التفاصيل. لهذا يكفي أن تفهم مثالاً واحداً جيداً لتقرأ الباقي.
ما الفرق بين الـ API والـ webhook؟
في الـ API تطبيقك هو من يسأل. لكن أحياناً تحدث أشياء خارج تطبيقك: العميل أكمل الدفع في صفحة البنك ثم أغلق المتصفح قبل أن يعود. كيف يعرف متجرك أن الطلب مدفوع؟ هنا يأتي الـ webhook: الخدمة نفسها تتصل بتطبيقك وتخبره بما حدث.
- تطبيقك يرسل الطلب متى احتاج
- مثال: اعرض لي المواعيد المتاحة
- الرد يعود فوراً لنفس الطلب
- مناسب لما يطلبه المستخدم الآن
- الخدمة ترسل إشعاراً عندما يقع حدث
- مثال: تم الدفع، أو تم إلغاء الحجز
- يصل حتى لو أغلق العميل الصفحة
- مناسب لتأكيد ما يحدث خارج تطبيقك
متجر جيد يستخدم الاثنين معاً: يسأل البوابة عن الحالة حين يعود العميل، ويستقبل إشعار الدفع عبر webhook احتياطاً. بهذا لا يضيع طلب مدفوع لأن الإنترنت انقطع عند العميل.
هل الـ API آمن؟ وما قصة المفاتيح؟
أغلب الخدمات المدفوعة أو الحساسة تطلب مفتاح API: نص طويل يشبه كلمة مرور خاصة بتطبيقك. من يملك المفتاح يستطيع أن يطلب باسمك، ولهذا هو أثمن ما في الربط كله.
كيف تربط الدفع وواتساب وتسجيل الدخول بتطبيقك دون أن تكتب كوداً؟
الطريق التقليدي: تقرأ توثيق كل خدمة، وتكتب كود الطلبات والردود، وتعالج الأخطاء، وتختبر كل حالة. هذا تعلّم مفيد لكنه يأخذ أسابيع لكل ربط. في فنّان تصف التطبيق بالعربية أو الإنجليزية فيُبنى مع الربط، وتطّلع على الخطة قبل البناء عبر وضع التخطيط.
طرق الدفع المحلية جاهزة للربط: مدى وApple Pay وSTC Pay وتابي وتمارا وKNET وBenefit وفوري، ومعها تسجيل الدخول برقم الجوال ورمز التحقق، وإشعارات واتساب، وتسجيل الدخول بحساب Google. القائمة الكاملة في صفحة التكاملات وصفحة المدفوعات.
ابنِ متجراً إلكترونياً لبيع العطور بالعربية والإنجليزية. العميل يسجّل الدخول برقم جواله ورمز تحقق. سلة مشتريات ودفع بمدى وApple Pay وتابي. بعد نجاح الدفع تتغير حالة الطلب إلى «مدفوع» ويصل للعميل تأكيد على واتساب برقم الطلب. إذا رُفض الدفع تظهر رسالة واضحة وزر للمحاولة مرة أخرى. صفحة للمالك تعرض الطلبات وحالاتها. اشرح لي في الخطة كل خدمة خارجية ستربطها ولماذا.
جرّبه في فنّانالجملة الأخيرة في المثال هي سرّ التعلّم: اطلب أن تُشرح لك كل خدمة. وبعد البناء افتح كود مشروعك واقرأ الجزء الذي يرسل طلب الدفع، واسأل المساعد Neo عن أي سطر لا تفهمه. المشروع ملكك وتستطيع تصديره.
هل أبني API خاصاً بي أم أستخدم الجاهز؟
سؤال يطرحه كل من يفهم الفكرة لأول مرة. الجواب يعتمد على ما تريده:
اختر ما يشبه حالتك لترى النصيحة.
استخدم خدمة جاهزة دائماً. لا أحد يبني بوابة دفع بنفسه. في فنّان تختار طريقة الدفع وتربطها بوصف واحد.
تحتاج API داخلياً يخدم الاثنين بالبيانات نفسها. فنّان يبني الموقع وتطبيق iOS وAndroid من المحادثة نفسها على بيانات مشتركة.
مثل مورد يريد معرفة المخزون. هنا تبني API خاصاً بك. صِف ما يُسمح للشريك برؤيته وما يُمنع عنه، واطلب أن يكون الوصول بمفتاح.
ابنِ تطبيقاً صغيراً فيه دفع وإشعار واحد، ثم اقرأ الطلبات والردود في كود مشروعك. هذا أوضح من أي درس نظري.
كيف أتعلم الـ APIs بالبناء خلال أسبوع؟
إن كان هدفك أن تفهم البرمجيات، فهذه خطة قصيرة تحوّل المفهوم إلى خبرة حقيقية بتطبيقك أنت:
- اليوم 1تطبيق بلا ربط
ابنِ في فنّان تطبيق حجز بسيطاً يعرض المواعيد ويحفظها. هنا تتعرف على الـ API الداخلي.
- اليوم 2تسجيل الدخول
أضف الدخول برقم الجوال ورمز التحقق، وراقب ما يحدث عند إدخال رمز خاطئ.
- اليوم 3إشعار واتساب
أرسل تأكيد الحجز على واتساب، واقرأ في الكود متى يُرسل الطلب.
- اليوم 4الدفع والـ webhook
أضف عربوناً بمدى أو Apple Pay، وتتبّع كيف يتحول الحجز إلى «مدفوع».
- اليوم 5الاختبار
اطلب من مهندس الجودة أن يجرّب التطبيق ويكتب تقريراً بالأخطاء مع لقطات شاشة، ثم أصلحها.
لا تحفظ تعريف الـ API. أرسل طلباً حقيقياً، واقرأ الرد، وستفهمه للأبد.
الخلاصة
- الـ API يشبه نافذة الطلبات في مطعم: تطلب بطريقة محددة، ويصلك رد بشكل معروف، ولا تدخل المطبخ.
- كل تطبيق حديث يستخدم عدة واجهات: الدفع، الرسائل، الخرائط، تسجيل الدخول، وقاعدة البيانات الخاصة به.
- الـ webhook هو العكس: الخدمة تتصل بتطبيقك من تلقاء نفسها عندما يحدث شيء، مثل نجاح الدفع.
- مفاتيح الـ API مثل كلمات المرور: لا تضعها في صفحة عامة ولا ترسلها في محادثة.
- تتعلم الـ API أسرع حين تربطه بتطبيقك أنت، ثم تقرأ ما حدث، بدل أن تحفظ تعريفات نظرية.
أسئلة شائعة
ما هو الـ API ببساطة؟
هل أحتاج إلى تعلم البرمجة لأستخدم API؟
ما الفرق بين الـ API والـ webhook؟
كيف أربط بوابة دفع بتطبيقي؟
هل استخدام الـ API مجاني؟
ماذا يحدث إن تسرّب مفتاح الـ API؟
اسأل مساعدك الذكي عن هذا الموضوع
انسخ هذا الطلب والصقه في مساعد الذكاء الاصطناعي الذي تستخدمه، ثم أضف تفاصيل حالتك.
أقرأ هذا الدليل: «ما هو الـ API؟ شرح مبسّط بأمثلة حقيقية من تطبيقك» https://fanann.com/ar/blog/what-is-an-api-explained/ سؤالي: ما هو الـ API اعتمد على هذه الصفحة كمصدر واشرح لي الإجابة خطوة بخطوة بما يناسب حالتي، واذكر ما يجب أن أتحقق منه قبل أن أبدأ، واذكر رابط الصفحة كمرجع.