الصفحة الرئيسية الموضوعات واجهات برمجة التطبيقات (API) ما المقصود بواجهة برمجة التطبيقات (API)؟
استكشف حل واجهة برمجة التطبيقات من IBM سجل للتعرف على تحديثات الذكاء الاصطناعي
رسم توضيحي يحتوي على مجموعة من الصور التوضيحية لمعدات وذراع آلية وهاتف المحمول

مؤتمر IBM TechXchange لعام 2024 | أكتوبر 21-24 في لاس فيجاس

انضم إلى الحدث الذي يجب حضوره للتقنيين الذين يستخدمون منتجات وحلول IBM. استكشف كتالوج الجلسات المتزايد الذي يضم أكثر من 1200 جلسة وورشة عمل.

استكشف TechXchange وسجّل للحصول عليه

تاريخ النشر: 09 أبريل 2024
المساهم: Michael Goodwin

ما المقصود بواجهة برمجة التطبيقات (API)؟

تعد API أو واجهة برمجة التطبيقات هي مجموعة من القواعد أو البروتوكولات التي تمكّن تطبيقات البرامج من التواصل مع بعضها البعض لتبادل البيانات والميزات والوظائف.

وتعمل واجهات برمجة التطبيقات على تبسيط عملية تطوير التطبيقات والبرامج وتسريعها من خلال تمكين المطورين من دمج البيانات والخدمات والقدرات من التطبيقات الأخرى، بدلاً من تطويرها من الصفر. توفر واجهات برمجة التطبيقات أيضًا لمالكي التطبيقات طريقة بسيطة وآمنة لإتاحة بيانات التطبيق ووظائفه للأقسام داخل مؤسستهم. يمكن لمالكي التطبيقات أيضًا مشاركة أو تسويق البيانات والوظائف إلى شركاء الأعمال أو الجهات الخارجية.

تسمح واجهات برمجة التطبيقات بمشاركة المعلومات الضرورية فقط، مع إبقاء تفاصيل النظام الداخلية الأخرى مخفية، مما يساعد في أمن النظام. ليس من الضروري أن تكشف الخوادم أو الأجهزة عن البيانات بشكل كامل—حيث تتيح واجهات برمجة التطبيقات مشاركة حزم صغيرة من البيانات ذات الصلة بالطلب المحدد.

تشبه وثائق واجهة برمجة التطبيقات (API) دليل التعليمات الفنية الذي يوفر تفاصيل حول واجهة برمجة التطبيقات (API) ومعلومات للمطورين حول كيفية العمل مع واجهة برمجة التطبيقات وخدماتها.  تعزز الوثائق المصممة بشكل جيد تجربة أفضل لواجهة برمجة التطبيقات للمستخدمين وتؤدي بشكل عام إلى نجاح واجهات برمجة التطبيقات بشكل أكبر.

دليل الأتمتة الذكية على مستوى المؤسسة

تعرف على كيف يمكن للأتمتة الذكية جعل عمليات عملك ميزة تنافسية.

محتوى ذو صلة

التسجيل للحصول على دليل تفعيل العمليات المالية

تعرّف على كيفية تحسين الذكاء الاصطناعي للوكلاء المستند إلى واجهة برمجة التطبيقات
كيف تعمل واجهات برمجة التطبيقات (API)؟

من المفيد أن نفكر في اتصالات واجهة برمجة التطبيقات من حيث الطلب والاستجابة بين العميل والخادم. التطبيق الذي يرسل الطلب هو العميل، والخادم يوفر الاستجابة. واجهة برمجة التطبيقات هي الجسر الذي يربط بينهما.

تتمثل إحدى الطرق البسيطة لفهم كيفية عمل واجهات برمجة التطبيقات في إلقاء نظرة على مثال شائع—وهو معالجة المدفوعات بواسطة جهة خارجية. عندما يقوم المستخدم بشراء منتج على موقع للتجارة الإلكترونية، قد يطالب الموقع المستخدم "بالدفع باستخدام PayPal" أو أي نوع آخر من أنواع أنظمة الجهات الخارجية. تعتمد هذه الوظيفة على واجهات برمجة التطبيقات لإجراء الاتصال.

  • عندما ينقر المشتري على زر الدفع، يتم إرسال استدعاء من واجهة برمجة التطبيقات لاسترداد المعلومات. هذا هو الطلب. تتم معالجة هذا الطلب من التطبيق إلى خادم الويب من خلال معرّف الموارد الموحّد (URI) الخاص بواجهة برمجة التطبيقات (API) ويتضمن فعل الطلب والعناوين وأحياناً نص الطلب.
     

  • بعد تلقي طلب صالح من صفحة الويب الخاصة بالمنتج، تتصل واجهة برمجة التطبيقات بالبرنامج الخارجي أو خادم الويب الخارجي، وهو في هذه الحالة نظام الدفع التابع لجهة خارجية.
     

  • يرسل الخادم استجابة إلى واجهة برمجة التطبيقات بالمعلومات المطلوبة.
     

  • تنقل واجهة برمجة التطبيقات (API) البيانات إلى التطبيق الذي أصدر الطلب الأولي، وهو في هذه الحالة موقع الويب للمنتج.

في حين أن نقل البيانات يختلف باختلاف خدمة الويب المستخدمة، إلا أن الطلبات والاستجابات تحدث جميعها من خلال واجهة برمجة التطبيقات. لا توجد رؤية على واجهة المستخدم، مما يعني أن واجهات برمجة التطبيقات تتبادل البيانات داخل الكمبيوتر أو التطبيق، وتظهر للمستخدم كاتصال سلس.

أنواع واجهات برمجة التطبيقات

يمكن تصنيف واجهات برمجة التطبيقات حسب حالة الاستخدام، بما في ذلك واجهات برمجة التطبيقات الخاصة بالبيانات، وواجهات برمجة التطبيقات الخاصة بنظام التشغيل، وواجهات برمجة التطبيقات عن بُعد، وواجهات برمجة التطبيقات الخاصة بالويب.

واجهات برمجة تطبيقات البيانات (أو قاعدة البيانات)

تُستخدم لربط التطبيقات وأنظمة إدارة قواعد البيانات.

واجهات برمجة تطبيقات نظام التشغيل (المحلي)

تُستخدم لتحديد كيفية استخدام التطبيقات لخدمات وموارد نظام التشغيل.

واجهات برمجة التطبيقات عن بُعد

تُستخدم لتحديد كيفية تفاعل التطبيقات على الأجهزة المختلفة.

واجهات برمجة تطبيقات الويب

تُستخدم لتمكين نقل البيانات والوظائف عبر الإنترنت باستخدام بروتوكول HTTP.

اليوم، معظم واجهات برمجة التطبيقات هي من نوع واجهات برمجة تطبيقات الويب. واجهات برمجة تطبيقات الويب هي نوع من واجهات برمجة التطبيقات عن بُعد (بمعنى أن واجهة برمجة التطبيقات تستخدم بروتوكولات لمعالجة الموارد الخارجية) التي تعرض بيانات التطبيق ووظائفه عبر الإنترنت.

الأنواع الأربعة الرئيسية لواجهات برمجة تطبيقات الويب هي:

واجهات برمجة التطبيقات المفتوحة

Open APIs هي واجهات برمجة تطبيقات مفتوحة المصدر التي يمكنك الوصول إليها باستخدام بروتوكول HTTP. وتُعرف أيضًا باسم واجهات برمجة التطبيقات العامة، وقد حددت هذه الواجهات نقطة نهاية واجهة برمجة التطبيقات وتنسيقات الطلبات والاستجابة.

واجهات برمجة تطبيقات الشركاء

تقوم واجهات برمجة تطبيقات الشركاء بالربط بين شركاء الأعمال الاستراتيجيين. عادةً ما يصل المطورون إلى واجهات برمجة التطبيقات هذه في وضع الخدمة الذاتية من خلال  بوابة مطور واجهة برمجة التطبيقات العامة. ومع ذلك، لا يزال يتعين عليهم إكمال عملية التأهيل والحصول على بيانات اعتماد تسجيل الدخول للوصول إلى واجهات برمجة تطبيقات الشركاء.

واجهات برمجة التطبيقات الداخلية

تظل واجهات برمجة التطبيقات الداخلية أو الخاصة مخفية عن المستخدمين الخارجيين. ولا تتوفر واجهات برمجة التطبيقات الخاصة هذه للمستخدمين خارج الشركة. بدلاً من ذلك، تستخدمها المؤسسات لتحسين الإنتاجية والتواصل بين فرق التطوير الداخلية المختلفة.

واجهات برمجة التطبيقات المركبة

تجمع واجهات برمجة التطبيقات المركبة بين عدة واجهات برمجة تطبيقات مخصصة للخدمات أو البيانات. فهي تسمح للمبرمجين بالوصول إلى العديد من نقاط النهاية في استدعاء واحد. تُعد واجهات برمجة التطبيقات المركبة مفيدة في بنية الخدمات المصغرة حيث قد يتطلب تشغيل مهمة واحدة الحصول على معلومات من عدة مصادر.

أمثلة على واجهة برمجة التطبيقات

نظرًا لأن واجهات برمجة التطبيقات (APIs) تتيح للمؤسسات إمكانية فتح صلاحية الوصول إلى مواردها مع الحفاظ على الأمن والتحكم، فقد أصبحت جانبًا قيّمًا من جوانب الأعمال الحديثة والتطبيقات الشخصية.

فيما يلي بعض الأمثلة على واجهة برمجة التطبيقات (API) التي غالباً ما يواجهها المستخدمون:

تسجيلات الدخول العامة

من أمثلة واجهة برمجة التطبيقات الشائعة تلك الوظيفة التي تمكّن الأشخاص من تسجيل الدخول إلى مواقع الويب باستخدام تفاصيل تسجيل الدخول إلى ملفاتهم الشخصية على Facebook أو X أو Google. تتيح هذه الميزة المريحة لأي موقع إلكتروني استخدام واجهة برمجة التطبيقات من إحدى الخدمات الأكثر شيوعًا للمصادقة السريعة. تساعد هذه القدرات على توفير وقت المستخدمين ومتاعب إعداد ملف شخصي جديد لكل تطبيق ويب أو عضوية جديدة.

إنترنت الأشياء (IoT)

وتوفر هذه "الأجهزة الذكية" وظائف إضافية، مثل الشاشات التي تعمل باللمس التي تدعم الإنترنت وجمع البيانات، من خلال واجهات برمجة التطبيقات. على سبيل المثال، يمكن للثلاجة الذكية أن تتصل بتطبيقات الوصفات أو تدوين الملاحظات وإرسالها إلى الهواتف المحمولة من خلال الرسائل النصية. وتتصل الكاميرات الداخلية بالعديد من التطبيقات بحيث يمكن للمستخدمين رؤية محتويات الثلاجة من أي مكان.

مقارنات حجوزات السفر

تجمع مواقع حجوزات السفر آلاف الرحلات الجوية، بحيث تعرض أرخص الخيارات لكل تاريخ ووجهة. تتيح واجهات برمجة التطبيقات (APIs) هذه الخدمة من خلال تزويد مستخدمي التطبيق بإمكانية الوصول إلى أحدث المعلومات حول التوافر من الفنادق وشركات الطيران.

يتوفر هذا الوصول إما من خلال متصفح الويب أو التطبيق الخاص بشركة حجز السفر. من خلال التبادل المستقل للبيانات والطلبات، تقلل واجهات برمجة التطبيقات بشكل كبير من الوقت والجهد المبذول في البحث عن رحلات الطيران أو أماكن الإقامة المتاحة.

تطبيقات التنقل

تستخدم تطبيقات الملاحة واجهات برمجة التطبيقات الأساسية التي تعرض الخرائط الثابتة أو التفاعلية. كما تستخدم هذه التطبيقات أيضاً واجهات برمجة التطبيقات والميزات الأخرى لتزويد المستخدمين بالاتجاهات، وحدود السرعة، ونقاط الاهتمام، والتحذيرات المرورية، وغير ذلك الكثير. يتواصل المستخدمون مع واجهة برمجة التطبيقات عند تخطيط مسارات السفر أو تتبع العناصر أثناء الحركة، مثل مركبة توصيل الطلبات.

وسائل التواصل الاجتماعي

تستخدم شركات وسائل التواصل الاجتماعي واجهات برمجة التطبيقات (APIs) للسماح للكيانات الأخرى بمشاركة المحتوى المعروض على تطبيقات وسائل التواصل الاجتماعي وتضمينه في مواقعها الخاصة. على سبيل المثال، تُمكِّن واجهة برمجة تطبيقات Instagram الشركات من تضمين شبكة Instagram الخاصة بهم على موقعهم الإلكتروني وتحديث الشبكة تلقائيًا عند إضافة المستخدمين منشورات جديدة.

تطبيقات البرمجيات كخدمة (SaaS)

تُعد واجهات برمجة التطبيقات جزءًا لا يتجزأ من نمو منتجات البرمجيات كخدمة (SaaS). غالبًا ما تتضمن منصات مثل CRM (أدوات إدارة علاقات العملاء) العديد من واجهات برمجة التطبيقات المدمجة التي تتيح للشركات التكامل مع التطبيقات التي تستخدمها بالفعل، مثل تطبيقات المراسلة ووسائل التواصل الاجتماعي والبريد الإلكتروني.

يقلل هذا التكامل بشكل كبير من الوقت المستغرق في التبديل بين التطبيقات من أجل مهام المبيعات والتسويق. كما أنه يساعد أيضًا في تقليل أو منع ظاهرة انعزال البيانات التي قد توجد بين الأقسام التي تستخدم تطبيقات مختلفة.

بروتوكولات واجهة برمجة التطبيقات والأنماط البنائية واللغات

قديمًا، كانت تشير واجهة برمجة التطبيقات إلى واجهة متصلة بتطبيق تم إنشاؤه باستخدام أي من لغات البرمجة منخفضة المستوى، مثل JavaScript. ومع ذلك، تختلف واجهات برمجة التطبيقات الحديثة في بنيتها واستخدامها لتنسيقات البيانات. وعادة ما يتم إنشاؤها للتشغيل على HTTP، مما ينتج عنه واجهات سهلة الاستخدام للمطورين يسهل الوصول إليها وفهمها على نطاق واسع بواسطة التطبيقات المكتوبة بلغات Java وRuby وPython والعديد من اللغات الأخرى.

مع زيادة استخدام واجهات برمجة تطبيقات الويب، أدى ذلك إلى تطوير واستخدام بروتوكولات وأساليب ومعايير ولغات معينة. تزود هذه البنى المستخدمين بمجموعة من القواعد المحددة، أو مواصفات واجهة برمجة التطبيقات، التي تنشئ أنواع البيانات والأوامر وصيغة الجمل المقبولة. في الواقع، تعمل بروتوكولات واجهة برمجة التطبيقات هذه على تسهيل تبادل المعلومات بشكل قياسي.

 

SOAP (بروتوكول الوصول البسيط إلى الكائنات)

بروتوكول الوصول البسيط إلى الكائنات (SOAP) عبارة عن مواصفات بروتوكول مراسلة خفيف قائم على XML يمكّن نقاط النهاية من إرسال واستقبال البيانات من خلال مجموعة من بروتوكولات الاتصال بما في ذلك SMTP (بروتوكول نقل البريد البسيط) وHTTP (بروتوكول نقل النص التشعبي). يعمل SOAP على نحو مستقل، مما يسمح لواجهات برمجة تطبيقات SOAP بمشاركة المعلومات بين مكونات التطبيقات أو البرامج التي تعمل في بيئات مختلفة أو مكتوبة بلغات مختلفة.

استدعاء الإجراء عن بُعد (RPC)

استدعاء الإجراء عن بُعد (RPC) هو بروتوكول يوفر نموذج الاتصالات عالي المستوى المستخدم في نظام التشغيل. يفترض استدعاء الإجراء عن بُعد وجود بروتوكول نقل منخفض المستوى، مثل بروتوكول التحكم في الإرسال/بروتوكول الإنترنت (TCP/IP) أو بروتوكول مخطط بيانات المستخدم (UDP)، لنقل بيانات الرسالة بين البرامج المتصلة.

يقوم استدعاء الإجراء عن بُعد بتنفيذ نظام اتصالات منطقي من عميل إلى خادم مصمم خصيصاً لدعم تطبيقات الشبكة. يمكّن بروتوكول استدعاء الإجراء عن بُعد المستخدمين من العمل مع الإجراءات البعيدة كما لو كانت الإجراءات محلية.1

بروتوكول XML-RPC (استدعاء الإجراء عن بُعد القائم على XML)

يعتمد بروتوكول XML-RPC على تنسيق XML محدد لنقل البيانات. يعد بروتوكول XML-RPC أقدم من SOAP، ولكنه أبسط، وخفيف نسبيًا من حيث أنه يستخدم الحد الأدنى من النطاق الترددي.

JSON-RPC

تمامًا مثل XML-RPC، فإن JSON-RPC هو استدعاء إجراء عن بُعد، يستخدم JSON (تدوين كائنات JavaScript) بدلاً من XML. JSON هو تنسيق خفيف لتبادل البيانات سهل التحليل ويستخدم أزواج أسماء/قيم وقوائم مرتبة من القيم. نظرًا لأن JSON يستخدم بنى بيانات عامة، فيمكن استخدامه مع أي لغة برمجة.

gRPC

gRPC هو عبارة عن إطار عمل استدعاء إجراء عن بُعد (RPC) عالي المستوى، تم تطويره في البداية بواسطة Google. يستخدم gRPC بروتوكول الشبكة HTTP/2 وتنسيق بيانات المخازن المؤقتة للبروتوكول ويُستخدم عادةً لربط الخدمات في بنية الخدمات المصغرة.

WebSocket

تتيح واجهات برمجة تطبيقات WebSocket الاتصال ثنائي الاتجاه بين العميل والخادم. لا يتطلب هذا النوع من واجهة برمجة التطبيقات إنشاء اتصال جديد لكل اتصال—فبمجرد إنشاء الاتصال، فإنه يسمح بالتبادل المستمر. وذلك يجعل واجهات برمجة تطبيقات WebSocket مثالية للاتصال في الوقت الفعلي.

REST (نقل الحالة التمثيلية)

REST هي مجموعة من مبادئ بنية واجهة برمجة تطبيقات الويب. واجهات برمجة تطبيقات REST—والمعروفة أيضًا باسم RESTful APIs—هي واجهات برمجة تطبيقات تلتزم بقيود بنية معينة لـ REST. تستخدم واجهات برمجة تطبيقات REST طلبات HTTP مثل GET وPUT وHEAD وDELETE للتفاعل مع الموارد. تتيح مجموعة مبادئ REST البيانات على شكل موارد، حيث يتم تمثيل كل مورد بـ URI فريد من نوعه. يقوم العملاء بطلب المورد من خلال توفير URI الخاص به.

تتميز واجهات برمجة تطبيقات REST بأنها بلا حالة—فهي لا تحفظ بيانات العميل بين الطلبات. من الممكن إنشاء واجهات برمجة تطبيقات RESTful مع بروتوكولات SOAP، لكن الممارسين عادةً ما ينظرون إلى المعيارين على أنهما مواصفات متنافسة.

GraphQL

GraphQL هي لغة استعلام مفتوحة المصدر ووقت تشغيل من جانب الخادم تحدد كيفية تفاعل العملاء مع واجهات برمجة التطبيقات. تسمح GraphQL للمستخدمين بإجراء طلبات واجهة برمجة التطبيقات ببضعة أسطر فقط، بدلاً من الاضطرار إلى الوصول إلى نقاط النهاية المعقدة باستخدام العديد من المعلمات. يمكن أن تسهل هذه القدرة إنشاء استعلامات واجهة برمجة التطبيقات (API) والاستجابة لها، خاصةً الطلبات الأكثر تعقيداً أو المحددة التي تستهدف موارد متعددة.

REST مقابل SOAP

يمثل SOAP وREST نهجين مختلفتين لتصميم واجهة برمجة التطبيقات، حيث يصفان القواعد والمعايير لكيفية تفاعل واجهة برمجة التطبيقات مع التطبيقات الأخرى. SOAP هو بروتوكول بينما REST هو مجموعة من القيود التي تشكل نمطًا بنائيًا. كلاهما يستخدم HTTP لتبادل المعلومات.

غالباً ما يعتبر REST بديلاً أبسط لبروتوكول SOAP لأنه خفيف الوزن ومرن وشفاف وسهل الاستخدام نسبياً؛ حيث يتطلب SOAP من المستخدمين كتابة المزيد من التعليمات البرمجية لإكمال كل مهمة أكثر مما يتطلبه REST.

ويعتبر SOAP أكثر حتمية وقوة (بسبب التحقق من النوع)، ويبرر المؤيدون أنه أسهل في الاستخدام بسبب دعم SOAP المدمج في العديد من أدوات التطوير.3  يشتمل SOAP على توافق مضمن، وغالباً ما يعتبره المطورون بروتوكولاً أكثر أماناً، ومناسباً بشكل أفضل للحالات ذات المتطلبات الصارمة لتكامل البيانات.

تدعم أنظمة RESTful المراسلة بتنسيقات مختلفة، مثل النص العادي وHTML وYAML وXML وJSON، بينما SOAP تسمح فقط بتنسيق XML. لكل منها نقاط قوته، وقد يعتمد "الاختيار الصحيح" على حالة الاستخدام. ومع ذلك، تعد القدرة على دعم تنسيقات متعددة لتخزين البيانات وتبادلها أحد الأسباب التي تجعل REST خيارًا سائدًا لبناء واجهات برمجة التطبيقات العامة.

REST مقابل GraphQL

إن GraphQL هي لغة استعلام ووقت تشغيل واجهة برمجة تطبيقات (API) طورتها فيسبوك داخليًا في عام 2012 قبل أن تصبح مصدرًا مفتوحًا في عام 2015. كل من GraphQL وREST عديم الحالة ويستخدمان نموذج العميل/الخادم ويستخدمان HTTP. يعمل GraphQL على حل بعض قيود REST، على سبيل المثال، توفير القدرة على استهداف الموارد المطلوبة بدقة أكبر بطلب واحد.

تتبع واجهات برمجة تطبيقات REST بنية ثابتة، وتعرض دائمًا مجموعة بيانات كاملة لكائن محدد. إذا كان الطلب أكثر تعقيدًا، بحيث يشمل عدة موارد، على سبيل المثال، يجب على العميل إرسال طلبات منفصلة لكل مورد. يمكن أن تؤدي هذه القيود إلى مشاكل في الجلب الناقص أو الزائد.

اقرأ المزيد عن GraphQL مقابل REST هنا

ليس لواجهات برمجة تطبيقات REST أو GraphQL ميزة على الأخرى بطبيعتها. فهي أدوات مختلفة تناسب مهامًا مختلفة. 

تعتبر REST أسهل تنفيذًا بشكل عام ويمكن أن تكون خيارًا جيدًا عندما يكون بروتوكول الاتصال المباشر والقابل للتخزين المؤقت مع ضوابط وصول صارمة هو الخيار المفضل (المواقع التجارة الإلكترونية التي تواجه الجمهور مثل Shopify و GitHub، كمثال واحد).

تتيح واجهات برمجة التطبيقات GraphQL إمكانية جلب البيانات على نحوٍ أكثر مرونة وكفاءة، مما يُمكن أن يُحسِّن أداء النظام وسهولة الاستخدام للمطورين. وتجعل هذه الميزات GraphQL مفيدة بشكل خاص لبناء واجهات برمجة التطبيقات في البيئات المعقدة ذات متطلبات الواجهة الأمامية سريعة التغير.4

واجهات برمجة التطبيقات وخدمات الويب والخدمات المصغرة
واجهات برمجة التطبيقات مقابل خدمات الويب

خدمة الويب هي عبارة عن عنصر برنامج إنترنت يسهل نقل البيانات عبر الشبكة. نظرًا لأن خدمة الويب تعرض بيانات ووظائف التطبيق إلى تطبيقات أخرى، فإن كل خدمة ويب هي في الواقع واجهة برمجة تطبيقات. ومع ذلك، ليست كل واجهة برمجة التطبيقات هي خدمة ويب.

واجهات برمجة التطبيقات هي أي عنصر برنامج يعمل كوسيط بين تطبيقين غير متصلين. بينما تقوم خدمات الويب أيضًا بربط التطبيقات، إلا أنها تتطلب شبكة للقيام بذلك. عادةً ما تكون خدمات الويب خاصة ويمكن للمستخدمين المعتمدين فقط الوصول إليها.

تطوير واجهات برمجة التطبيقات والخدمات المصغرة وتطوير السحابة الأصلية

الخدمات المصغرة هي أسلوب بنائي يقسم التطبيق إلى عناصر أصغر ومستقلة، وغالبًا ما تتصل باستخدام واجهات برمجة تطبيقات REST. إن بناء التطبيق كمجموعة من الخدمات المنفصلة يمكّن المطورين من العمل على عنصر تطبيق واحد بشكل مستقل عن الخدمات الأخرى، ويجعل اختبار التطبيقات وصيانتها والتوسع فيها أكثر سهولة.

لقد أصبحت بنية الخدمات المصغرة أكثر انتشارًا مع ظهور الحوسبة السحابية، والتي تُعد إلى جانب الحاويات وKubernetes أساسية في تطوير تطبيقات السحابة الأصلية.

مزايا واجهة برمجة التطبيقات

تعمل واجهات برمجة التطبيقات على تبسيط تصميم وتطوير التطبيقات والخدمات الجديدة وتكامل وإدارة التطبيقات والخدمات الحالية. كما أنها تقدم أيضًا ميزة كبيرة للمطورين والمؤسسات على نطاق أوسع.

تعزيز التعاون

تستخدم المؤسسة متوسطة الحجم ما يقرب من 1200 تطبيق سحابي (محتوى الرابط موجود خارج ibm.com)، والعديد منها غير متصل. تعمل واجهات برمجة التطبيقات على تمكين التكامل بحيث يمكن لهذه المنصات والتطبيقات التواصل بسلاسة مع بعضها البعض. من خلال هذا التكامل، يمكن للشركات أتمتة مهام سير العمل وتحسين التعاون في مكان العمل. وبدون واجهات برمجة التطبيقات، ستفتقر العديد من المؤسسات إلى الاتصال، مما يتسبب في انعزال المعلومات عن بعضها مما يضر بالإنتاجية والأداء.

تسريع وتيرة الابتكار

توفر واجهات برمجة التطبيقات مرونة واضحة، مما يسمح للشركات بإقامة علاقات تجارية مع شركاء أعمال جدد وتقديم خدمات جديدة لسوقها الحالي. كما تتيح هذه المرونة للشركات إمكانية الوصول إلى أسواق جديدة يمكن أن تعزز العوائد وتدفع عجلة التحول الرقمي.

على سبيل المثال، بدأت شركة Stripe كواجهة برمجة تطبيقات (API) بسبعة أسطر من الرموز البرمجية فقط. وقد عملت الشركة منذ ذلك الحين مع العديد من كبرى الشركات في العالم. وقد تنوعت شركة Stripe لتقدم القروض وبطاقات الشركات، وحصلت على تقييم حديث (محتوى الرابط موجود خارج ibm.com) بقيمة 65 مليار دولار أمريكي.

تسييل البيانات

تختار العديد من الشركات تقديم واجهات برمجة التطبيقات مجانًا، على الأقل في البداية، حتى تتمكن من بناء جمهور من المطورين حول علامتها التجارية وإقامة علاقات مع الشركاء المحتملين. إذا كانت واجهة برمجة التطبيقات (API) تتيح الوصول إلى أصول رقمية قيّمة، فإن الشركة تحقق الدخل من خلال بيع إمكانية الوصول إليها. يُشار إلى هذه الممارسة باسم اقتصاد API.

عندما أطلقت AccuWeather (محتوى الرابط موجود خارج ibm.com) "بوابة المطورين" ذاتية الخدمة الخاصة بها لبيع مجموعة واسعة من حزم واجهات برمجة التطبيقات، استغرق الأمر 10 أشهر فقط لجذب 24000 مطور، وبيع 11000 مفتاح من مفاتيح واجهة برمجة التطبيقات. وقد ساعدت هذه الحركة في بناء مجتمع مزدهر في هذه العملية.

أمن النظام

تقوم واجهات برمجة التطبيقات بفصل التطبيق الطالب عن البنية التحتية للخدمة المستجيبة وتوفر طبقات من الأمان بين الاثنين أثناء تواصلهما. على سبيل المثال، عادةً ما تتطلب استدعاءات واجهة برمجة التطبيقات (API) بيانات الاعتماد للمصادقة. يمكن أن توفر عناوين HTTP أو ملفات تعريف الارتباط أو سلاسل الاستعلام أمنًا إضافيًا أثناء تبادل البيانات. بإمكان  بوابة واجهة برمجة التطبيقات التحكم في الوصول لتقليل التهديدات الأمنية بشكل أكبر.

أمان وخصوصية المستخدم

توفر واجهات برمجة التطبيقات حماية إضافية داخل الشبكة. كما يمكن أن توفر طبقة أخرى من الحماية للمستخدمين الشخصيين. عندما يطلب أحد مواقع الويب موقع المستخدم (توفر واجهة برمجة التطبيقات الخاصة بالموقع هذه المعلومات)، يمكن للمستخدم أن يقرر ما إذا كان سيسمح بهذا الطلب أو يرفضه.

تحتوي العديد من متصفحات الويب وأنظمة تشغيل أجهزة الكمبيوتر والأجهزة المحمولة على هياكل أذونات مدمجة. عندما يتوجب على التطبيق الوصول إلى الملفات من خلال واجهة برمجة التطبيقات، تستخدم أنظمة التشغيل مثل iOS وmacOS وWindows وLinux أذونات لهذا الوصول.

حلول ذات صلة
IBM® API Connect

يمكنك إدارة دورة حياة واجهة برمجة التطبيقات (API) الخاصة بك عبر سحابات متعددة وتعزيز التواصل الاجتماعي وتحسين جهود تحقيق الأرباح عبر النظام البنائي بأكمله.

استكشف IBM API Connect
حلول التكامل من IBM

قم بالربط والأتمتة وفتح آفاق قدرات الأعمال باستخدام حلول التكامل من IBM.

استكشف حلول التكامل من IBM
حلول منصة التكامل كخدمة (iPaaS)

يمكنك ربط التطبيقات والبيانات وعمليات الأعمال والخدمات، سواء كانت مستضافة محلياً أو في بيئة سحابة خاصة أو ضمن بيئة سحابة عامة.

استكشف حلول منصات التكامل كخدمة (iPaaS) من IBM
الموارد ما المقصود بواجهة برمجة التطبيقات لبنية نقل الحالة التماثلية (REST API)؟

تعرّف على كيفية توفير واجهات برمجة تطبيقات REST طريقة مرنة وخفيفة لدمج التطبيقات وربطها في بنيات الخدمات المصغرة.

ما هي مراقبة واجهة برمجة التطبيقات؟

مراقبة واجهة برمجة التطبيقات هي عملية مراقبة أداء واجهات برمجة تطبيقات المؤسسة وتوافرها ووظائفها.

تقرير 2023 Gartner Critical Capabilities

اقرأ لماذا اختارت Gartner شركة IBM كشركة رائدة في تقرير Gartner Critical Capabilities for API Management لعام 2023.

ما المقصود بنقطة نهاية واجهة برمجة التطبيقات؟

نقطة نهاية واجهة برمجة التطبيقات هي موقع رقمي تتلقى فيه واجهة برمجة التطبيقات (API) استدعاءات واجهة برمجة التطبيقات، والمعروفة أيضًا باسم طلبات واجهة برمجة التطبيقات، للموارد الموجودة على خادمها.

ما أساسيات واجهة برمجة التطبيقات (API)؟

اكتشف الأنواع المختلفة من واجهات برمجة التطبيقات والبروتوكولات وأساليب التطوير وكيفية تحسين كل منها لإدارة البيانات بين الأنظمة.

ما المقصود بإدارة واجهة برمجة التطبيقات (API)؟

تعرّف على إدارة واجهة برمجة التطبيقات وكيف يمكن لمنصة إدارة واجهة برمجة التطبيقات (API) الموحدة أن تساعدك على توسيع نطاق مؤسستك.

اتخِذ الخطوة التالية

استخدم IBM API Connect لتأمين واجهات برمجة التطبيقات (API) الخاصة بالمؤسسة وإدارتها طوال دورات حياتها. يساعدك أنت وعملاءك على إنشاء واجهات برمجة التطبيقات الخاصة بالمؤسسات، وإدارتها، وتأمينها، والترويج لها، وتحقيق أرباح منها بشكل متواصل، وهو متاح أيضًا كمنصة لإدارة برمجة تطبيقات عالية القابلية للتوسع على IBM Marketplace وAWS.

استكشف API Connect احجز عرضًا توضيحيًا مباشرًا
الحواشي

1Remote Procedure Call”, ibm.com, 3 November 2023.

2What is GraphQL”, Chrystal R. China, ibm.com, 8 December 2023.

3
Comparing REST and SOAP”, ibm.com, 5 March 2021.

4GraphQL vs. REST API: What’s the difference?”, Chrystal R. China, ibm.com, 29 March 2024.