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

أنت تطّلع على مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
info

يمكنك نشر واجهات برمجة التطبيقات في البوابة لتوفيرها لمطوّري التطبيقات، كما هو موضّح في الأقسام التالية.

نظرة عامة على نشر واجهات برمجة التطبيقات

تتكوّن عملية نشر واجهات برمجة التطبيقات في البوابة من خطوتَين:

  1. اختَر منتج واجهة برمجة التطبيقات الذي تريد نشره في البوابة.
  2. يمكنك عرض المستندات المرجعية لواجهات برمجة التطبيقات من مستند OpenAPI أو مخطّط GraphQL لإتاحة الفرصة لمطوّري التطبيقات للتعرّف على واجهات برمجة التطبيقات. (لمزيد من المعلومات عن اللقطات، يُرجى الاطّلاع على مقالة ما هي اللقطة؟)

ما الذي يتم نشره على البوابة؟

عند نشر واجهة برمجة تطبيقات، يتم إجراء التعديلات التالية على البوابة تلقائيًا:

  • المستندات المرجعية لواجهة برمجة التطبيقات تعتمد الواجهة المقدَّمة على ما إذا كنت تنشر واجهة برمجة التطبيقات باستخدام مستند OpenAPI أو مخطّط GraphQL. يمكنك الاطّلاع على:
  • إضافة رابط إلى صفحة مرجع واجهة برمجة التطبيقات في صفحة واجهات برمجة التطبيقات

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

    • الصورة المعروضة لكل بطاقة واجهة برمجة تطبيقات
    • الفئات المستخدَمة لوضع علامات على واجهات برمجة التطبيقات من أجل تمكين المطوّرين من اكتشاف واجهات برمجة التطبيقات ذات الصلة في صفحة "واجهات برمجة التطبيقات"

    صفحة واجهات برمجة التطبيقات في البوابة المباشرة تعرض فئتين واستخدام الصور

SmartDocs (OpenAPI)

عند نشر واجهة برمجة تطبيقات باستخدام مستند OpenAPI، تتم إضافة مستندات مرجعية لـ SmartDocs API إلى البوابة.

يمكن للمطوّرين مراجعة المستندات المرجعية لواجهة برمجة التطبيقات SmartDocs API واستخدام لوحة تجربة واجهة برمجة التطبيقات هذه لتقديم طلب بيانات من واجهة برمجة التطبيقات وعرض النتيجة. تعمل واجهة برمجة التطبيقات هذه مع نقاط النهاية غير الآمنة أو نقاط النهاية الآمنة باستخدام أسلوب مصادقة برمجة تطبيقات أساسية أو مفتاح واجهة برمجة التطبيقات أو مصادقة OAuth، استنادًا إلى طريقة الأمان المحدّدة في مستند OpenAPI. بالنسبة إلى بروتوكول OAuth، تتوفّر العمليات التالية: رمز التفويض، وكلمة المرور، وبيانات اعتماد العميل.

صفحة مستندات مرجعية لواجهة برمجة التطبيقات تتضمّن نصائح توضيحية توضّح كيفية تفويض طلب البيانات من واجهة برمجة التطبيقات وإلغاء تثبيت لوحة "تجربة واجهة برمجة التطبيقات هذه" وتنزيل المواصفات ذات الصلة وتنفيذ واجهة برمجة التطبيقات

انقر على ملء الشاشة لتوسيع لوحة تجربة واجهة برمجة التطبيقات هذه. تتيح لك اللوحة الموسّعة عرض نماذج رمز وطلبات curl بتنسيقات مختلفة، مثل HTTP وPython وNode.js والمزيد، كما هو موضّح في الشكل التالي.

لوحة "تجربة واجهة برمجة التطبيقات هذه" الموسّعة

أداة GraphQL Explorer

عند نشر واجهة برمجة تطبيقات باستخدام مخطّط GraphQL، تتم إضافة أداة GraphQL Explorer إلى البوابة. أداة GraphQL Explorer هي مساحة تفاعلية لتشغيل طلبات بحث في واجهة برمجة التطبيقات. يستند المستكشف إلى GraphiQL، وهو تنفيذ مرجعي لتطوير بيئة تطوير البرامج (IDE) في GraphQL من تطوير GraphQL Foundation.

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

لمزيد من المعلومات عن GraphQL، يُرجى الاطّلاع على graphql.org.

أداة GraphQL Explorer في البوابة

ما هي اللقطة؟

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

عند نشر واجهة برمجة التطبيقات، يمكنك أخذ لقطة لمستند OpenAPI أو GraphQL لعرض المستندات المرجعية لواجهة برمجة التطبيقات. تمثّل هذه اللقطة نسخة معيّنة من المستند. في حال تعديل المستند، يمكنك أخذ لقطة أخرى للمستند لعرض آخر التغييرات في مستندات مرجع واجهة برمجة التطبيقات.

لمحة عن عناوين URL لردّ الاتصال

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

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

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

ضبط الوكيل لواجهة برمجة التطبيقات لتفعيل ميزة "تجربة واجهة برمجة التطبيقات هذه"

قبل نشر واجهات برمجة التطبيقات باستخدام مستند OpenAPI، عليك ضبط الوكيل لواجهة برمجة التطبيقات للسماح بإجراء طلبات في لوحة تجربة واجهة برمجة التطبيقات هذه في مستندات مرجع SmartDocs API، على النحو التالي:

  • إضافة إمكانية استخدام بروتوكول CORS إلى وكلاء واجهة برمجة التطبيقات لفرض طلبات متعددة المصادر من جهة العميل

    بروتوكول مشاركة الموارد المشتركة المنشأ (CORS) هو آلية عادية تسمح لواجهات XMLHttpRequest (XHR) في JavaScript والتي يتم تنفيذها في صفحة ويب بالتفاعل مع موارد من نطاقات غير مصدر المحتوى. مشاركة الموارد المتعدّدة المصادر هي حلّ شائع لتنفيذ سياسة المصادر المشترَكة التي تفرضها جميع المتصفّحات.

  • عدِّل إعدادات الخادم الوكيل لواجهة برمجة التطبيقات إذا كنت تستخدم المصادقة الأساسية أو بروتوكول ‎OAuth2.

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

إذن الوصول إلى المصادقة متطلبات ضبط السياسة
لا شيء أو مفتاح واجهة برمجة التطبيقات أضِف إمكانية استخدام بروتوكول CORS إلى الخادم الوكيل لواجهة برمجة التطبيقات. للتيسير، استخدِم نموذج حلّ CORS المتوفّر على GitHub أو اتّبِع الخطوات الموضّحة في إضافة ميزة CORS إلى خادم وكيل واجهة برمجة التطبيقات.
المصادقة الأساسية اتّبِع الخطوات التالية:
  1. أضِف إمكانية استخدام بروتوكول CORS إلى الخادم الوكيل لواجهة برمجة التطبيقات. للتيسير، استخدِم عيّنة حلّ CORS المتوفّرة على GitHub أو اتّبِع الخطوات الموضّحة في مقالة إضافة ميزة CORS إلى خادم وكيل واجهة برمجة التطبيقات.
  2. في سياسة "إضافة CORS AssignMessage"، تأكَّد من أنّ عنوان Access-Control-Allow-Headers يتضمّن سمة authorization. على سبيل المثال:
    <Header name="Access-Control-Allow-Headers">
      origin, x-requested-with, accept, content-type, authorization
    </Header>
OAuth2
  1. أضِف إمكانية استخدام بروتوكول CORS إلى الخادم الوكيل لواجهة برمجة التطبيقات. للتيسير، استخدِم عيّنة حلّ CORS المتوفّرة على GitHub أو اتّبِع الخطوات الموضّحة في مقالة إضافة ميزة CORS إلى خادم وكيل واجهة برمجة التطبيقات.
  2. في سياسة "إضافة CORS AssignMessage"، تأكَّد من أنّ عنوان Access-Control-Allow-Headers يتضمّن سمة authorization. على سبيل المثال:
    <Header name="Access-Control-Allow-Headers">
      origin, x-requested-with, accept, content-type, authorization
    </Header>
  3. صحِّح السلوك غير المتوافق مع RFC في سياسة OAuth2. لتسهيل الأمر، استخدِم نموذج حلّ OAuth2 المتوفّر على GitHub أو اتّبِع الخطوات التالية:
    • تأكَّد من ضبط العنصر <GrantType> في سياسة OAuth2 على request.formparam.grant_type (مَعلمة النموذج). لمزيد من المعلومات، يُرجى الاطّلاع على <GrantType>.
    • تأكَّد من ضبط token_type في سياسة OAuth2 على Bearer وليس على القيمة التلقائية BearerToken.

Manage APIs

يمكنك إدارة واجهات برمجة التطبيقات كما هو موضَّح في الأقسام التالية.

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

استخدِم واجهة المستخدم أو الأمر curl لعرض واجهات برمجة التطبيقات المتوفّرة في البوابة.

واجهة المستخدم

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

  1. اختَر النشر > البوابات واختَر البوابة.
  2. انقر على قائمة واجهات برمجة التطبيقات في الصفحة الرئيسية للبوابة. بدلاً من ذلك، يمكنك اختيار قائمة واجهات برمجة التطبيقات في القائمة المنسدلة للبوابة في شريط التنقّل العلوي.

تعرض علامة التبويب "واجهات برمجة التطبيقات" في قائمة واجهات برمجة التطبيقات قائمة بواجهات برمجة التطبيقات التي تمت إضافتها إلى البوابة.

علامة التبويب &quot;واجهات برمجة التطبيقات&quot; التي تعرض معلومات عن واجهات برمجة التطبيقات، بما في ذلك الاسم والوصف ومستوى العرض والفئات والمواصفات المرتبطة والوقت الذي تم فيه التعديل

كما هو موضّح في الشكل السابق، تتيح لك علامة التبويب "واجهات برمجة التطبيقات" تنفيذ ما يلي:

curl

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

curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs" \
    -H "Authorization: Bearer ACCESS_TOKEN"

غيِّر القيم في السلسلة على الشكل التالي:

  • ORG_NAME مع اسم المؤسسة مثلاً: my-org
  • SITE_ID مع اسم البوابة، في النموذج ORG_NAME-PORTAL_NAME، حيث يكون ORG_NAME هو اسم المؤسسة وPORTAL_NAME هو اسم البوابة الذي تم تحويله إلى أحرف صغيرة فقط مع إزالة المسافات والشرطات على سبيل المثال: my-org-myportal.
  • ACCESS_TOKEN مع رمز المصادقة المستخدَم للوصول إلى Apigee Edge API. لمزيد من المعلومات عن المصادقة والرموز المميّزة، يُرجى الاطّلاع على مقالة مصادقة الوصول إلى Edge API.

اطّلِع على ملاحظات حول التقسيم على صفحات للحصول على تعليمات حول استخدام التقسيم على صفحات في الحمولة المستلَمة للردّ.

حمولة الردّ:

{
  "status": "success",
  "message": "one page of apidocs returned",
  "data": [
    {
      "id": 622759,
      "siteId": "my-org-myportal",
      "title": "Test",
      "description": "",
      "published": false,
      "visibility": false,
      "apiId": "apiproducttest18",
      "apiProductName": "apiproduct_test18",
      "edgeAPIProductName": "apiproduct_test18",
      "specId": null,
      "specContent": null,
      "specTitle": null,
      "snapshotExists": false,
      "snapshotModified": null,
      "modified": 1724144471000,
      "anonAllowed": false,
      "imageUrl": null,
      "snapshotState": null,
      "requireCallbackUrl": false,
      "categoryIds": [],
      "specFormat": null,
      "specModified": null,
      "snapshotOutdated": false,
      "snapshotSourceMissing": false,
      "graphqlSchema": null,
      "graphqlEndpointUrl": null,
      "graphqlSchemaDisplayName": null,
      "grpcFileName": null,
      "grpcZipContent": null
    }
  ],
  "code": null,
  "request_id": "1452867334",
  "error_code": null,
  "next_page_token": ""
}

المكان:

  • modified: وقت آخر تعديل على عنصر الكتالوج بالمللي ثانية منذ بداية حساب الوقت مثلاً: 1698165480000
  • id: رقم تعريف عنصر الكتالوج مثلاً: 399668

ملاحظات حول تقسيم الصفحات:

  • حجم الصفحة: استخدِم pageSize لتحديد عدد عناصر القائمة التي سيتم عرضها في صفحة واحدة. الإعداد التلقائي هو 25، والحد الأقصى هو 100. إذا كانت هناك صفحات إضافية، تتم تعبئة nextPageToken برمز مميّز:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs?pageSize=PAGE_SIZE" \
       -H "Authorization: Bearer ACCESS_TOKEN"
    

    استبدال:

    • PAGE_SIZE مع عدد عناصر القائمة التي سيتم عرضها في صفحة واحدة على سبيل المثال، 10.

    حمولة الردّ:

    {
      "status": "success",
      "message": "one page of apidocs returned",
      "data": [
        {
          "id": 638007,
          "siteId": "tsnow-mint-liztest",
          "title": "Testing",
          "description": "",
          "published": false,
          "visibility": false,
          "apiId": "testcatalog",
          "apiProductName": "testcatalog",
          "edgeAPIProductName": "testcatalog",
          "specId": "Petstore",
          "specContent": null,
          "specTitle": null,
          "snapshotExists": true,
          "snapshotModified": 1726508367000,
          "modified": 1728582504000,
          "anonAllowed": false,
          "imageUrl": null,
          "snapshotState": "OK_SUBMITTED",
          "requireCallbackUrl": false,
          "categoryIds": [],
          "specFormat": "YAML",
          "specModified": null,
          "snapshotOutdated": false,
          "snapshotSourceMissing": false,
          "graphqlSchema": null,
          "graphqlEndpointUrl": null,
          "graphqlSchemaDisplayName": null,
          "grpcFileName": null,
          "grpcZipContent": null
        }
      ],
      "code": null,
      "request_id": "1068810934",
      "error_code": null,
      "next_page_token": ""
    }
    

  • رمز تعريف الصفحة: استخدِم pageToken لاسترداد الصفحات اللاحقة عندما يكون هناك أكثر من صفحة واحدة:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN" \
          -H "Authorization: Bearer ACCESS_TOKEN"
    

    استبدال:

    • PAGE_SIZE مع عدد عناصر القائمة التي سيتم عرضها في صفحة واحدة على سبيل المثال، 10.
    • PAGE_TOKEN بالقيمة nextPageToken على سبيل المثال: 7zcqrin9l6xhi4nbrb9.

إضافة واجهة برمجة تطبيقات

استخدِم واجهة المستخدم أو الأمر curl لإضافة واجهات برمجة التطبيقات إلى البوابة:

واجهة المستخدم

لإضافة واجهة برمجة تطبيقات إلى البوابة، اتّبِع الخطوات التالية:

  1. الوصول إلى كتالوج واجهات برمجة التطبيقات
  2. انقر على علامة التبويب واجهات برمجة التطبيقات، إذا لم تكن محددة.
  3. انقر على + إضافة.

    يظهر مربّع الحوار إضافة منتج من واجهة برمجة التطبيقات إلى الكتالوج.

  4. اختَر منتج واجهة برمجة التطبيقات الذي تريد إضافته إلى البوابة.

  5. انقر على التالي. تظهر صفحة تفاصيل واجهة برمجة التطبيقات.

  6. يمكنك ضبط محتوى مستندات مرجع واجهة برمجة التطبيقات ومستوى ظهورها على البوابة:

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

    لاستخدام مستند OpenAPI:

    1. اختَر مستند OpenAPI.
    2. انقر على اختيار مستند.
    3. نفِّذ إحدى الخطوات التالية:
      • انقر على علامة التبويب مواصفاتي واختَر مواصفة من متجر المواصفات.
      • انقر على علامة التبويب تحميل ملف وحمِّل ملفًا.
      • انقر على علامة التبويب الاستيراد من عنوان URL واستورِد مواصفة من عنوان URL.
    4. انقر على اختيار.

    لاستخدام مخطّط GraphQL:

    1. اختَر مخطّط GraphQL.
    2. انقر على اختيار مستند.
    3. انتقِل إلى مخطّط GraphQL واختَره.
    4. انقر على اختيار.

    بدلاً من ذلك، يمكنك اختيار ما مِن مستندات وإضافتها في وقت لاحق بعد إضافة واجهة برمجة التطبيقات، كما هو موضّح في إدارة لقطة المستند.

    إذن الوصول إلى واجهة برمجة التطبيقات

    إذا لم تكن قد سجّلت في الإصدار التجريبي من ميزة إدارة الجمهور، اختَر أحد الخيارَين التاليَين:

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

    إذا سبق أن تم تسجيلك في الإصدار التجريبي من ميزة إدارة الجمهور، حدِّد أحد الخيارَين التاليَين:

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

    يمكنك إدارة مستوى رؤية الجمهور لاحقًا، كما هو موضّح في مقالة إدارة مستوى رؤية واجهة برمجة التطبيقات في منصّتك.

    الصورة المعروضة لعرض صورة على بطاقة واجهة برمجة التطبيقات في صفحة واجهات برمجة التطبيقات، انقر على اختيار صورة. في مربّع الحوار اختيار صورة، اختَر صورة حالية أو حمِّل صورة جديدة أو أدخِل عنوان URL لصورة خارجية، ثم انقر على اختيار. اطّلِع على الصورة المصغّرة لواجهة برمجة التطبيقات وانقر على اختيار. يمكنك إضافة صورة لاحقًا، كما هو موضّح في مقالة إدارة صورة بطاقة واجهة برمجة التطبيقات. عند تحديد صورة باستخدام عنوان URL خارجي، لن يتم تحميل الصورة إلى مواد العرض. بالإضافة إلى ذلك، سيخضع تحميل الصورة في البوابة المُدمَجة لمدى توفّرها، والذي قد يتم حظره أو حظره من خلال سياسات أمان المحتوى.
    الفئات

    أضِف الفئات التي ستتم الإشارة إلى واجهة برمجة التطبيقات بها لتتمكّن من مطوّري التطبيقات من اكتشاف واجهات برمجة التطبيقات ذات الصلة في صفحة "واجهات برمجة التطبيقات". لتحديد فئة:

    • اختَر فئة من القائمة المنسدلة.
    • أضِف فئة جديدة من خلال كتابة اسمها والضغط على Enter. ستتم إضافة الفئة الجديدة إلى صفحة "الفئات" وستكون متوفرة عند إضافة واجهات برمجة تطبيقات أخرى أو تعديلها.

  7. انقر على حفظ.

curl

لـ إضافة واجهة برمجة تطبيقات إلى البوابة :

curl -X POST "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs" \
    -H "Authorization: Bearer ACCESS_TOKEN" \
    -H "Content-Type: application/json" \
    -d '{
       "title": "TITLE",
       "description": "DESCRIPTION",
       "anonAllowed": ANON_TRUE_OR_FALSE,
       "imageUrl": "IMAGE_URL",
       "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE,
       "categoryIds": [
         "CATEGORY_ID1",
         "CATEGORY_ID2"
       ],
       "published": PUBLISHED_TRUE_OR_FALSE,
        "apiProductName": "API_PRODUCT"
    }'

غيِّر القيم في السلسلة على الشكل التالي:

  • ORG_NAME مع اسم المؤسسة مثلاً: my-org
  • SITE_ID مع اسم البوابة، في النموذج ORG_NAME-PORTAL_NAME، حيث يكون ORG_NAME هو اسم المؤسسة وPORTAL_NAME هو اسم البوابة الذي تم تحويله إلى أحرف صغيرة فقط مع إزالة المسافات والشرطات على سبيل المثال: my-org-myportal.
  • ACCESS_TOKEN مع رمز المصادقة المستخدَم للوصول إلى Apigee Edge API. لمزيد من المعلومات عن المصادقة والرموز المميّزة، يُرجى الاطّلاع على مقالة مصادقة الوصول إلى Edge API.
  • TITLE مع العنوان المعروض. مثلاً: Hello World 2
  • DESCRIPTION مع وصف العرض على سبيل المثال: Simple hello world example.
  • ANON_TRUE_OR_FALSE مع true أو false (الإعداد التلقائي)، حيث true يعني أنّ واجهة برمجة التطبيقات هذه متاحة للجميع ويمكن عرضها بشكل مجهول، بخلاف ذلك، يمكن للمستخدمين المسجّلين فقط عرضها.
  • IMAGE_URL مع عنوان URL لصورة خارجية مستخدَمة لسلعة في القائمة، أو مسار ملف لملفات الصور المخزّنة في البوابة، على سبيل المثال، /files/book-tree.jpg. عند تحديد عنوان URL لصورة خارجية، لن يتم تحميل الصورة إلى مواد العرض. بالإضافة إلى ذلك، سيخضع تحميل الصورة في البوابة المدمجة إلى مدى توفّرها، والذي قد يتم حظره أو تقييده بموجب سياسات أمان المحتوى.
  • CALLBACK_TRUE_OR_FALSE مع true أو false (الإعداد التلقائي)، حيث true يتطلب من مستخدم البوابة إدخال عنوان URL عند إدارة التطبيق.
  • CATEGORY_ID مع معرّف الفئة. على سبيل المثال، bf6505eb-2a0f-47af-a00a-ded40ac72960. افصل بين أرقام تعريف الفئات المتعددة بعلامة فاصلة. احصل على معرّف الفئة باستخدام الأمر list API categories.
  • PUBLISHED_TRUE_OR_FALSE مع true أو false (الإعداد التلقائي)، حيث true يشير إلى أنّ واجهة برمجة التطبيقات متاحة للجميع. عند نشر التطبيق، يمكنك السماح بالوصول إلى جميع المستخدمين أو المستخدمين الذين تم مصادقة هويتهم أو مستخدمين محدّدين.
  • API_PRODUCT مع اسم منتج واجهة برمجة التطبيقات على سبيل المثال، Hello World 2.

حمولة الردّ:

{
  "status": "success",
  "message": "API created",
  "data": {
    "id": 662423,
    "siteId": "my-org-myportal",
    "title": "My Test Catalog 4",
    "description": "",
    "published": false,
    "visibility": false,
    "apiId": "uxb9wjua",
    "apiProductName": "uXB9wJUa",
    "edgeAPIProductName": "uXB9wJUa",
    "specId": null,
    "specContent": null,
    "specTitle": null,
    "snapshotExists": false,
    "snapshotModified": null,
    "modified": 1729635493000,
    "anonAllowed": false,
    "imageUrl": null,
    "snapshotState": null,
    "requireCallbackUrl": false,
    "categoryIds": [],
    "specFormat": null,
    "specModified": null,
    "snapshotOutdated": null,
    "snapshotSourceMissing": false,
    "graphqlSchema": null,
    "graphqlEndpointUrl": null,
    "graphqlSchemaDisplayName": null,
    "grpcFileName": null,
    "grpcZipContent": null
  },
  "code": null,
  "request_id": "893346193",
  "error_code": null
}

المكان:

  • modified: وقت آخر تعديل على عنصر الكتالوج بالمللي ثانية منذ بداية حساب الوقت مثلاً: 1698165480000
  • id: رقم تعريف عنصر الكتالوج مثلاً: 399668

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

بعد إضافة واجهة برمجة تطبيقات، استخدِم واجهة المستخدم أو طلب بيانات من واجهة برمجة التطبيقات للقيام بالتعديلات.

يقدّم هذا القسم مثالاً مفصّلاً على الخطوات التي يجب اتّخاذها لتعديل واجهة برمجة تطبيقات حالية في البوابة.

يُرجى الرجوع إلى الأقسام اللاحقة للاطّلاع على إعدادات تعديل محدّدة.

واجهة المستخدم

لتعديل واجهة برمجة تطبيقات، اتّبِع الخطوات التالية:

  1. الوصول إلى كتالوج واجهات برمجة التطبيقات
  2. انقر على علامة التبويب واجهات برمجة التطبيقات، إذا لم تكن محددة.
  3. انقر على صف واجهة برمجة التطبيقات التي تريد تعديلها.
  4. انقر على رمز تعديلتعديل.
  5. ضمن تفاصيل واجهة برمجة التطبيقات، أدخِل أي تعديلات. اطّلِع على أوصاف الخيارات في إضافة واجهة برمجة تطبيقات.
  6. انقر على حفظ.

curl

بعد إضافة واجهة برمجة تطبيقات، استخدِم طلب update للقيام بالتعديلات.

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

  1. لتحديد موقع id الذي تم إنشاؤه والذي يحدِّد كل واجهة برمجة تطبيقات بشكل فريد، يمكنك الحصول على قائمة بواجهات برمجة التطبيقات في البوابة كما هو موضّح في استكشاف واجهات برمجة التطبيقات.
  2. عرض القيم الحالية لواجهة برمجة تطبيقات معيّنة:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
    -H "Authorization: Bearer ACCESS_TOKEN"
    

    غيِّر القيم في السلسلة على الشكل التالي:

    • ORG_NAME مع اسم المؤسسة مثلاً: my-org
    • SITE_ID مع اسم البوابة، في النموذج ORG_NAME-PORTAL_NAME، حيث يكون ORG_NAME هو اسم المؤسسة وPORTAL_NAME هو اسم البوابة الذي تم تحويله إلى أحرف صغيرة فقط مع إزالة المسافات والشرطات على سبيل المثال: my-org-myportal.
    • API_DOC مع id الذي تم إنشاؤه للمستند. على سبيل المثال، 399668. استخدِم الأمر list API docs للعثور على هذه القيمة.
    • ACCESS_TOKEN مع رمز المصادقة المستخدَم للوصول إلى Apigee Edge API. لمزيد من المعلومات عن المصادقة والرموز المميّزة، يُرجى الاطّلاع على مقالة مصادقة الوصول إلى Edge API.

    حمولة الردّ:

    {
      "status": "success",
      "message": "apidoc returned",
      "data": {
        "id": 662423,
        "siteId": "my-org-myportal",
        "title": "My Test Catalog 4",
        "description": "",
        "published": false,
        "visibility": false,
        "apiId": "uxb9wjua",
        "apiProductName": "uXB9wJUa",
        "edgeAPIProductName": "uXB9wJUa",
        "specId": null,
        "specContent": null,
        "specTitle": null,
        "snapshotExists": false,
        "snapshotModified": null,
        "modified": 1729635493000,
        "anonAllowed": false,
        "imageUrl": null,
        "snapshotState": null,
        "requireCallbackUrl": false,
        "categoryIds": [],
        "specFormat": null,
        "specModified": null,
        "snapshotOutdated": false,
        "snapshotSourceMissing": false,
        "graphqlSchema": null,
        "graphqlEndpointUrl": null,
        "graphqlSchemaDisplayName": null,
        "grpcFileName": null,
        "grpcZipContent": null
      },
      "code": null,
      "request_id": "601210268",
      "error_code": null
    }
    

  1. أدرِج القيم القابلة للتغيير التي تريد الاحتفاظ بها في طلب update ، وعدِّل القيم التي تريد تغييرها. في حال حذف سطر، يتم استخدام الإعداد التلقائي. في هذا المثال، غيِّر الإعداد "منشور" من false إلى true:

    curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
     -H "Authorization: Bearer ACCESS_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{
        "title": "TITLE",
        "anonAllowed": true,
        "published": true
     }'
    

    غيِّر القيم في السلسلة على الشكل التالي:

    • TITLE مع العنوان المعروض. مثلاً: Hello World 2

    حمولة الردّ:

    {
      "status": "success",
      "message": "ApiDoc updated",
      "data": {
        "id": 662423,
        "siteId": "my-org-myportal",
        "title": "My Test Catalog 4",
        "description": "",
        "published": true,
        "visibility": true,
        "apiId": "uxb9wjua",
        "apiProductName": "uXB9wJUa",
        "edgeAPIProductName": "uXB9wJUa",
        "specId": null,
        "specContent": null,
        "specTitle": null,
        "snapshotExists": false,
        "snapshotModified": null,
        "modified": 1729989250000,
        "anonAllowed": true,
        "imageUrl": null,
        "snapshotState": null,
        "requireCallbackUrl": false,
        "categoryIds": [],
        "specFormat": null,
        "specModified": null,
        "snapshotOutdated": null,
        "snapshotSourceMissing": false,
        "graphqlSchema": null,
        "graphqlEndpointUrl": null,
        "graphqlSchemaDisplayName": null,
        "grpcFileName": null,
        "grpcZipContent": null
      },
      "code": null,
      "request_id": "738172002",
      "error_code": null
    }
    

إدارة لقطة المستند

بعد نشر واجهة برمجة التطبيقات، يمكنك في أي وقت أخذ لقطة جديدة من مستند OpenAPI أو GraphQL لتعديل المستند المرجعي لواجهة برمجة التطبيقات الذي تم نشره على البوابة.

لإدارة لقطة المستند:

  1. الوصول إلى كتالوج واجهات برمجة التطبيقات
  2. انقر على علامة التبويب واجهات برمجة التطبيقات، إذا لم تكن محددة.
  3. انقر على صف واجهة برمجة التطبيقات التي تريد تعديلها.
  4. تحقَّق من حالة اللقطة. إذا كان قديمًا، تظهر الرسالة التالية: رمز ورسالة يشيرَان إلى أنّ اللقطة قديمة
  5. انقر على رمز تعديل.
  6. نفِّذ إحدى المهام التالية:
    • لإعادة تحميل لقطة شاشة لمستند OpenAPI قديم، انقر على إعادة تحميل اللقطة.
    • لتغيير المستند المستخدَم لإنشاء مستندات واجهة برمجة التطبيقات، انقر على اختيار مستند ضمن مستندات واجهة برمجة التطبيقات واختَر المستند الجديد.
  7. انقر على حفظ.

نشر واجهة برمجة تطبيقات أو إلغاء نشرها على البوابة

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

استخدِم واجهة المستخدم أو الأمر curl لنشر واجهة برمجة تطبيقات أو إلغاء نشرها على البوابة.

واجهة المستخدم

لنشر واجهة برمجة تطبيقات أو إلغاء نشرها على البوابة:

  1. الوصول إلى كتالوج واجهات برمجة التطبيقات
  2. انقر على علامة التبويب واجهات برمجة التطبيقات، إذا لم تكن محددة.
  3. انقر على صف واجهة برمجة التطبيقات التي تريد تعديلها.
  4. انقر على تعديل الرمز تعديل.
  5. ضمن تفاصيل واجهة برمجة التطبيقات، ضَع علامة في المربّع بجانب منشورة (مُدرَجة في القائمة) أو أزِلها لنشر واجهة برمجة التطبيقات أو إلغاء نشرها على البوابة، على التوالي.
  6. انقر على حفظ.

curl

أدرِج أحد العناصر التالية في طلب التعديل:

"published": true,    # API is published to your portal
"published": false,   # API is not published in your portal

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

  1. عرض القيم الحالية:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs" \
    -H "Authorization: Bearer ACCESS_TOKEN"
  2. استخدِم طلب update لتعديل واجهة برمجة التطبيقات. أدرِج القيم القابلة للتغيير التي تريد الاحتفاظ بها وتعديل القيم التي تريد تغييرها. في حال حذف إعداد قابل للتغيير، يتم استبداله بالقيمة التلقائية.

    curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/  ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
     -H "Authorization: Bearer ACCESS_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{
        "title": "TITLE",
        "description": "DESCRIPTION",
        "anonAllowed": ANON_TRUE_OR_FALSE,
        "imageUrl": IMAGE_URL,
        "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE,
        "categoryIds": [
          "CATEGORY_ID1",
         "CATEGORY_ID2"
        ],
        "published": PUBLISHED_TRUE_OR_FALSE
    }

اطّلِع على إدارة إصدار المستند للحصول على مثال مفصّل على الخطوات والمتغيّرات وحمولة البيانات التي يتم عرضها.

إدارة مستوى رؤية واجهة برمجة التطبيقات في البوابة

يمكنك إدارة مستوى ظهور واجهة برمجة تطبيقات في بوابتك من خلال السماح بالوصول إلى:

استخدِم واجهة المستخدم أو الأمر curl لإدارة مستوى رؤية واجهة برمجة التطبيقات في البوابة:

واجهة المستخدم

لإدارة مستوى ظهور واجهة برمجة تطبيقات في البوابة، اتّبِع الخطوات التالية:

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

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

  6. انقر على إرسال.

curl

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

إذا لم تكن مسجّلاً في ميزة إدارة الجمهور، تتم إدارة مستوى العرض باستخدام anonAllowed.

أدرِج أحد العناصر التالية في update الطلب:

  # When not enrolled in the beta release of the audience management feature:

  "anonAllowed": true,      # Anonymous users can see the API
  "anonAllowed": false,     # Only registered users can see the API

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

  1. عرض القيم الحالية:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN"
    
  2. استخدِم طلب update لتعديل واجهة برمجة التطبيقات. أدرِج القيم القابلة للتغيير التي تريد الاحتفاظ بها وعدِّل القيم التي تريد تغييرها. في حال حذف إعداد قابل للتغيير، يتم استخدام القيمة التلقائية.

    curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN" \
         -H "Content-Type: application/json" \
         -d '{
            "title": "TITLE",
            "description": "DESCRIPTION",
            "anonAllowed": ANON_TRUE_OR_FALSE,
            "imageUrl": IMAGE_URL,
            "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE,
            "categoryIds": [
              "CATEGORY_ID1",
              "CATEGORY_ID2"
            ],
            "published": PUBLISHED_TRUE_OR_FALSE
         }'

اطّلِع على مقالة تعديل واجهة برمجة تطبيقات للحصول على مثال مفصّل على الخطوات والمتغيّرات والحمولة التي يتم عرضها.

إدارة عنوان URL لردّ الاتصال لواجهة برمجة تطبيقات

إدارة عنوان URL لردّ الاتصال لواجهة برمجة تطبيقات اطّلِع على لمحة عن عناوين URL لردّ المكالمات.

استخدِم واجهة المستخدم أو الأمر curl لإدارة عنوان URL لطلب إعادة الاتصال لواجهة برمجة التطبيقات:

واجهة المستخدم

لإدارة عنوان URL لردّ الاتصال لواجهة برمجة التطبيقات، اتّبِع الخطوات التالية:

  1. الوصول إلى كتالوج واجهات برمجة التطبيقات
  2. انقر على علامة التبويب واجهات برمجة التطبيقات، إذا لم تكن محددة.
  3. انقر على صف واجهة برمجة التطبيقات التي تريد تعديلها.
  4. انقر على تعديل الرمز تعديل.
  5. ضمن تفاصيل واجهة برمجة التطبيقات، ضَع علامة في مربّع الاختيار طلب من المطوّرين تحديد عنوان URL لمعاودة الاتصال أو أزِل هذه العلامة.
  6. انقر على حفظ.

curl

أدرِج أحد العناصر التالية في update الطلب:

  "requireCallbackUrl": true,    # Portal user is required to input a URL
  "requireCallbackUrl": false,   # Portal user is not required to input a URL

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

  1. عرض القيم الحالية:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN"
    
  2. استخدِم طلب update لتعديل واجهة برمجة التطبيقات. أدرِج القيم القابلة للتغيير التي تريد الاحتفاظ بها وعدِّل القيم التي تريد تغييرها. في حال حذف إعداد قابل للتغيير، يتم استخدام القيمة التلقائية.

    curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN" \
         -H "Content-Type: application/json" \
         -d '{
            "title": "TITLE",
            "description": "DESCRIPTION",
            "anonAllowed": ANON_TRUE_OR_FALSE,
            "imageUrl": IMAGE_URL,
            "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE,
            "categoryIds": [
              "CATEGORY_ID1",
              "CATEGORY_ID2"
            ],
            "published": PUBLISHED_TRUE_OR_FALSE
         }'

اطّلِع على مقالة تعديل واجهة برمجة تطبيقات للحصول على مثال مفصّل على الخطوات والمتغيّرات والحمولة التي يتم عرضها.

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

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

استخدِم واجهة المستخدم أو الأمر curl لإدارة صورة بطاقة واجهة برمجة التطبيقات:

واجهة المستخدم

لإدارة صورة بطاقة واجهة برمجة التطبيقات، اتّبِع الخطوات التالية:

  1. الوصول إلى كتالوج واجهات برمجة التطبيقات
  2. انقر على علامة التبويب واجهات برمجة التطبيقات، إذا لم تكن محددة.
  3. انقر على صف واجهة برمجة التطبيقات التي تريد تعديلها.
  4. انقر على تعديل الرمز تعديل.
  5. ضمن تفاصيل واجهة برمجة التطبيقات:

    • انقر على اختيار صورة لتحديد صورة أو تحميلها في حال عدم تحديد صورة.
    • انقر على تغيير الصورة لتحديد صورة مختلفة أو تحميلها.
    • انقر على x في الصورة لإزالتها.

    عند تحديد صورة، حدِّد إما صورة تتضمّن عنوان URL خارجيًا يُستخدَم لعنصر الكتالوج، أو مسارًا لملف الصور المخزّنة في البوابة، على سبيل المثال /files/book-tree.jpg. عند تحديد عنوان URL لصورة خارجية، لن يتم تحميل الصورة إلى مواد العرض. بالإضافة إلى ذلك، سيخضع تحميل الصورة في البوابة المُدمَجة إلى مدى توفّرها، والذي قد يتم حظره أو تقييده بموجب سياسات أمان المحتوى.

  6. انقر على حفظ.

curl

يُرجى تضمين ما يلي في update مكالمتك:

  # Omit line for no image file

  "imageUrl": "IMAGE_URL"    # URL of the external image or name of the image file

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

  1. عرض القيم الحالية:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN"
    
  2. استخدِم طلب update لتعديل واجهة برمجة التطبيقات. أدرِج القيم القابلة للتغيير التي تريد الاحتفاظ بها وعدِّل القيم التي تريد تغييرها. في حال حذف إعداد قابل للتغيير، يتم استخدام القيمة التلقائية.

    curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN" \
         -H "Content-Type: application/json" \
         -d '{
            "title": "TITLE",
            "description": "DESCRIPTION",
            "anonAllowed": ANON_TRUE_OR_FALSE,
            "imageUrl": IMAGE_URL,
            "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE,
            "categoryIds": [
              "CATEGORY_ID1",
              "CATEGORY_ID2"
            ],
            "published": PUBLISHED_TRUE_OR_FALSE
         }'

اطّلِع على مقالة تعديل واجهة برمجة تطبيقات للحصول على مثال مفصّل على الخطوات والمتغيّرات والحمولة التي يتم عرضها.

الإشارة إلى واجهة برمجة تطبيقات باستخدام الفئات

يساعد استخدام الفئات مطوّري التطبيقات في العثور على واجهات برمجة التطبيقات ذات الصلة. راجِع أيضًا إدارة الفئات.

يمكنك الإشارة إلى واجهة برمجة تطبيقات باستخدام الفئات بإحدى الطريقتَين التاليتَين:

  • يمكنك إدارة الفئات التي يتم وضع علامة عليها لواجهة برمجة التطبيقات عند تعديلها، على النحو описан أدناه.
  • يمكنك إدارة واجهات برمجة التطبيقات التي تمّت الإشارة إليها في فئة معيّنة عند تعديل الفئة.

استخدِم واجهة المستخدم أو الأمر curl لتصنيف واجهة برمجة تطبيقات باستخدام الفئات:

واجهة المستخدم

لإضافة علامة لواجهة برمجة تطبيقات إلى فئات عند تعديل واجهة برمجة التطبيقات:

  1. الوصول إلى كتالوج واجهات برمجة التطبيقات
  2. انقر على علامة التبويب واجهات برمجة التطبيقات، إذا لم تكن محددة.
  3. انقر على صف واجهة برمجة التطبيقات التي تريد تعديلها.
  4. انقر على تعديل الرمز تعديل.
  5. انقر في حقل الفئات واتّبِع إحدى الخطوات التالية:
    • اختَر فئة من القائمة المنسدلة.
    • أضِف فئة جديدة من خلال كتابة اسمها والضغط على Enter. ستتم إضافة الفئة الجديدة إلى صفحة "الفئات" وستصبح متاحة عند إضافة واجهات برمجة تطبيقات أخرى أو تعديلها.
  6. كرِّر ذلك لإضافة واجهة برمجة التطبيقات إلى المزيد من الفئات.
  7. انقر على حفظ.

curl

يُرجى تضمين ما يلي في update مكالمتك:

  # Omit line for no categories

  "categoryIds": [
      "CATEGORY_ID1",      # A category ID number
      "CATEGORY_ID2"       # A category ID number
    ],

استخدِم الأمر list categories للحصول على أرقام معرّفات الفئات.

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

  1. عرض القيم الحالية:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN"
    
  2. استخدِم طلب update لتعديل واجهة برمجة التطبيقات. أدرِج القيم القابلة للتغيير التي تريد الاحتفاظ بها وعدِّل القيم التي تريد تغييرها. في حال حذف إعداد قابل للتغيير، يتم استخدام القيمة التلقائية.

    curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN" \
         -H "Content-Type: application/json" \
         -d '{
            "title": "TITLE",
            "description": "DESCRIPTION",
            "anonAllowed": ANON_TRUE_OR_FALSE,
            "imageUrl": IMAGE_URL,
            "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE,
            "categoryIds": [
              "CATEGORY_ID1",
              "CATEGORY_ID2"
            ],
            "published": PUBLISHED_TRUE_OR_FALSE
         }'

اطّلِع على مقالة تعديل واجهة برمجة تطبيقات للحصول على مثال مفصّل على الخطوات والمتغيّرات والحمولة التي يتم عرضها.

تعديل العنوان المعروض والوصف

استخدِم واجهة المستخدم أو الأمر curl لتعديل العنوان المعروض والوصف:

واجهة المستخدم

لتعديل العنوان المعروض والوصف:

  1. الوصول إلى كتالوج واجهات برمجة التطبيقات
  2. انقر على علامة التبويب واجهات برمجة التطبيقات، إذا لم تكن محددة.
  3. انقر على صف واجهة برمجة التطبيقات التي تريد تعديلها.
  4. انقر على تعديل الرمز تعديل.
  5. عدِّل الحقلين العنوان المعروض والوصف المعروض حسب الحاجة.
  6. انقر على حفظ.

curl

يُرجى تضمين ما يلي في update مكالمتك:

  "title": "TITLE",    # Display title
  "description": "DESCRIPTION",  # Display description

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

  1. عرض القيم الحالية:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN"
    
  2. استخدِم طلب update لتعديل واجهة برمجة التطبيقات. أدرِج القيم القابلة للتغيير التي تريد الاحتفاظ بها وعدِّل القيم التي تريد تغييرها. في حال حذف إعداد قابل للتغيير، يتم استخدام القيمة التلقائية.

    curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN" \
         -H "Content-Type: application/json" \
         -d '{
            "title": "TITLE",
            "description": "DESCRIPTION",
            "anonAllowed": ANON_TRUE_OR_FALSE,
            "imageUrl": IMAGE_URL,
            "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE,
            "categoryIds": [
              "CATEGORY_ID1",
              "CATEGORY_ID2"
            ],
            "published": PUBLISHED_TRUE_OR_FALSE
         }'

اطّلِع على مقالة تعديل واجهة برمجة تطبيقات للحصول على مثال مفصّل على الخطوات والمتغيّرات والحمولة التي يتم عرضها.

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

استخدِم واجهة المستخدم أو الأمر curl لإزالة واجهة برمجة تطبيقات من البوابة:

واجهة المستخدم

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

  1. الوصول إلى كتالوج واجهات برمجة التطبيقات
  2. اختَر واجهات برمجة التطبيقات، إذا لم تكن محدّدة.
  3. ضع المؤشر فوق واجهة برمجة التطبيقات في القائمة لعرض قائمة الإجراءات.
  4. انقر على رمز الحذف حذف.

curl

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

curl -X DELETE "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
    -H "Authorization: Bearer ACCESS_TOKEN"

غيِّر القيم في السلسلة على الشكل التالي:

  • ORG_NAME مع اسم المؤسسة مثلاً: my-org
  • SITE_ID مع اسم البوابة، في النموذج ORG_NAME-PORTAL_NAME، حيث يكون ORG_NAME هو اسم المؤسسة وPORTAL_NAME هو اسم البوابة الذي تم تحويله إلى أحرف صغيرة فقط مع إزالة المسافات والشرطات على سبيل المثال: my-org-myportal.
  • API_DOC مع id الذي تم إنشاؤه للمستند. على سبيل المثال، 399668. استخدِم الأمر list API docs للعثور على هذه القيمة.
  • ACCESS_TOKEN مع رمز المصادقة المستخدَم للوصول إلى Apigee Edge API. لمزيد من المعلومات عن المصادقة والرموز المميّزة، يُرجى الاطّلاع على مقالة مصادقة الوصول إلى Edge API.

حمولة الردّ:

{
  "status": "success",
  "message": "Apidoc deleted",
  "data": {
  },
  "code": null,
  "request_id": "1790036484",
  "error_code": null
}

إدارة مستندات واجهة برمجة التطبيقات

توضّح الأقسام التالية كيفية تعديل مستندات IDE أو تنزيلها أو إزالتها.

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

لتحميل نسخة مختلفة من مستندات واجهة برمجة التطبيقات، اتّبِع الخطوات التالية:

واجهة المستخدم

  1. الوصول إلى كتالوج واجهات برمجة التطبيقات
  2. انقر على علامة التبويب واجهات برمجة التطبيقات، إذا لم تكن محددة.
  3. انقر على صف واجهة برمجة التطبيقات التي تريد تعديلها.
  4. تحقَّق من حالة اللقطة. إذا كان قديمًا، تظهر الرسالة التالية: رمز ورسالة يشيرَان إلى أنّ اللقطة قديمة
  5. انقر على تعديل.
  6. نفِّذ إحدى المهام التالية:
    • لإعادة تحميل لقطة شاشة لمستند OpenAPI قديم، انقر على إعادة تحميل اللقطة.
    • لتغيير المستند المستخدَم لإنشاء مستندات واجهة برمجة التطبيقات، انقر على اختيار مستند ضمن مستندات واجهة برمجة التطبيقات واختَر المستند الجديد.
  7. في لوحة مستندات واجهة برمجة التطبيقات، اختَر أحد الخيارَين التاليَين:
    • مستند OpenAPI
    • مخطّط GraphQL
  8. انقر على اختيار مستند واختَر أحدث نسخة من المستند.
  9. بالنسبة إلى GraphQL، حدِّد عنوان URL لنقطة النهاية.
  10. انقر على حفظ.

يتم عرض المستندات المرجعية لواجهة برمجة التطبيقات من المستند وإضافتها إلى صفحة "مرجع واجهة برمجة التطبيقات". تم تعديل حالة اللقطة إلى "حالية":

يشير الرمز والرسالة إلى أنّ المقطع المصغّر حالي

curl

لتعديل محتوى مستندات OpenAPI أو GraphQL:

OpenAPI

curl -X PATCH "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC/documentation" \
    -H "Authorization: Bearer ACCESS_TOKEN" \
    -H "Content-Type: application/json" \
    -d '{"oasDocumentation": {
           "spec":{ "displayName":"DISPLAY_NAME",
                    "contents":"CONTENTS"}
            }
        }'

غيِّر القيم في السلسلة على الشكل التالي:

  • ORG_NAME مع اسم المؤسسة مثلاً: my-org
  • SITE_ID مع اسم البوابة، في النموذج ORG_NAME-PORTAL_NAME، حيث يكون ORG_NAME هو اسم المؤسسة وPORTAL_NAME هو اسم البوابة الذي تم تحويله إلى أحرف صغيرة فقط مع إزالة المسافات والشرطات على سبيل المثال: my-org-myportal.
  • API_DOC مع id الذي تم إنشاؤه للمستند. على سبيل المثال، 399668. استخدِم الأمر list API docs للعثور على هذه القيمة.
  • DISPLAY_NAME مع الاسم المعروض لمستندات واجهة برمجة التطبيقات. على سبيل المثال، Hello World 2.
  • CONTENTS مع سلسلة مشفّرة بترميز base64 لمحتوى مستندات واجهة برمجة التطبيقات تحتوي معظم بيئات التطوير على أداة تحويل base64، أو تتوفّر العديد من أدوات التحويل على الإنترنت.

حمولة الردّ:

{
 "status":"success",
 "message":"Api documentation updated",
 "requestId":"645138278"
 "data": {
   "oasDocumentation": {
     "spec": {
        "displayName": "Hello World 2"
      },
     "Format": "YAML"
   }
 }
}

GraphQL

curl -X PATCH "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC/documentation" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"graphqlDocumentation": {
         "schema":{"displayName":"DISPLAY_NAME",
         "contents":"CONTENTS"},
         "endpointUri": "ENDPOINT_URI"
          }
      }'

غيِّر القيم في السلسلة على الشكل التالي:

  • ORG_NAME مع اسم المؤسسة مثلاً: my-org
  • SITE_ID مع اسم البوابة، في النموذج ORG_NAME-PORTAL_NAME، حيث يكون ORG_NAME هو اسم المؤسسة وPORTAL_NAME هو اسم البوابة الذي تم تحويله إلى أحرف صغيرة فقط مع إزالة المسافات والشرطات على سبيل المثال: my-org-myportal.
  • API_DOC مع id الذي تم إنشاؤه للمستند. على سبيل المثال، 399668. استخدِم الأمر list API docs للعثور على هذه القيمة.
  • DISPLAY_NAME مع الاسم المعروض لمستندات واجهة برمجة التطبيقات. على سبيل المثال، Hello World 2.
  • ENDPOINT_URI باسم نطاق معرّف الموارد المنتظم لنقطة النهاية. على سبيل المثال، https://demo.google.com/graphql.
  • CONTENTS مع سلسلة مشفّرة بترميز base64 لمحتوى مستندات واجهة برمجة التطبيقات تحتوي معظم بيئات التطوير على أداة تحويل base64، أو تتوفّر العديد من أدوات التحويل على الإنترنت.

حمولة الردّ:

{
"status": "success",
"message": "ApiDocDocumentation updated",
"data": {
  "oasDocumentation": null,
  "graphqlDocumentation": {
    "schema": {
      "displayName": "schema.docs.graphql",
      "contents": ""
    },
    "endpointUri": "https://demo.google.com/graphql"
  }
},
"code": null,
"request_id": "640336173",
"error_code": null
}

يتم عرض المستند المرجعي لواجهة برمجة التطبيقات من المستند وإضافته إلى صفحة واجهات برمجة التطبيقات في البوابة المنشورة.

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

لتنزيل مستندات واجهة برمجة التطبيقات:

واجهة المستخدم

curl

لتنزيل مستندات واجهة برمجة التطبيقات باستخدام get documentation:

curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC/documentation" \
    -H "Authorization: Bearer ACCESS_TOKEN"

غيِّر القيم في السلسلة على الشكل التالي:

  • ORG_NAME مع اسم المؤسسة مثلاً: my-org
  • SITE_ID مع اسم البوابة، في النموذج ORG_NAME-PORTAL_NAME، حيث يكون ORG_NAME هو اسم المؤسسة وPORTAL_NAME هو اسم البوابة الذي تم تحويله إلى أحرف صغيرة فقط مع إزالة المسافات والشرطات على سبيل المثال: my-org-myportal.
  • API_DOC مع id الذي تم إنشاؤه للمستند. على سبيل المثال، 399668. استخدِم الأمر list API docs للعثور على هذه القيمة.

    حمولة الردّ:

{
  "status": "success",
  "message": "ApiDocDocumentation returned",
  "data": {
    "oasDocumentation": {
      "spec": {
        "displayName": "mock",
        "contents": "b3BlbmFwaTogMy4wLjAKaW5mbzoKICBkZXNjcmlw ..."
      },
      "format": "YAML"
    },
    "graphqlDocumentation": null
  },
  "code": null,
  "request_id": "269996898",
  "error_code": null
}

المكان:

contents: سلسلة مُشفَّرة بترميز base64 لمحتوى مستندات واجهة برمجة التطبيقات

إزالة مستندات واجهة برمجة التطبيقات

لإزالة مستندات واجهة برمجة التطبيقات:

واجهة المستخدم

  1. الوصول إلى كتالوج واجهات برمجة التطبيقات
  2. انقر على علامة التبويب واجهات برمجة التطبيقات، إذا لم تكن محددة.
  3. انقر على صف واجهة برمجة التطبيقات التي تريد تعديلها.
  4. انقر على تعديل.
  5. في لوحة مستندات واجهة برمجة التطبيقات، اختَر ما مِن مستندات.
  6. انقر على حفظ.

curl

لمحو المحتوى الحالي، استخدِم update API:

curl -X PATCH "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC/documentation" \
    -H "Authorization: Bearer ACCESS_TOKEN" \
    -H "Content-Type: application/json" \
    -d '{}'

غيِّر القيم في السلسلة على الشكل التالي:

  • ORG_NAME مع اسم المؤسسة مثلاً: my-org
  • SITE_ID مع اسم البوابة، في النموذج ORG_NAME-PORTAL_NAME، حيث يكون ORG_NAME هو اسم المؤسسة وPORTAL_NAME هو اسم البوابة الذي تم تحويله إلى أحرف صغيرة فقط مع إزالة المسافات والشرطات على سبيل المثال: my-org-myportal.
  • API_DOC مع id الذي تم إنشاؤه للمستند. على سبيل المثال، 399668. استخدِم الأمر list API docs للعثور على هذه القيمة.

حمولة الردّ:

{
  "status": "success",
  "message": "ApiDocDocumentation updated",
  "data": {
    "oasDocumentation": null,
    "graphqlDocumentation": null
  },
  "code": null,
  "request_id": "304329676",
  "error_code": null
}

إدارة الفئات المستخدَمة لاستكشاف واجهات برمجة التطبيقات ذات الصلة

وضع علامة على واجهة برمجة تطبيقات باستخدام الفئات لتمكّن مطوّري التطبيقات من اكتشاف واجهات برمجة التطبيقات ذات الصلة في صفحة "واجهات برمجة التطبيقات" في البوابة المنشورة أضِف الفئات وادارتها كما هو موضَّح في الأقسام التالية.

عرض الفئات

استخدِم واجهة المستخدم أو الأمر curl لعرض واجهات برمجة التطبيقات المتوفّرة في البوابة.

واجهة المستخدم

لعرض صفحة "الفئات":

  1. اختَر النشر > البوابات واختَر البوابة.
  2. انقر على قائمة واجهات برمجة التطبيقات في الصفحة الرئيسية للبوابة.

    بدلاً من ذلك، يمكنك اختيار قائمة واجهات برمجة التطبيقات في القائمة المنسدلة في شريط التنقّل العلوي في البوابة.

  3. انقر على علامة التبويب الفئات.

تعرض علامة التبويب الفئات في كتالوج واجهة برمجة التطبيقات قائمة الفئات التي تم تحديدها لبوابتك.

علامة التبويب &quot;الفئات&quot; التي تعرض اسم الفئة والأسماء وإجمالي عدد واجهات برمجة التطبيقات المخصّصة

كما هو موضّح في الشكل السابق، تتيح لك صفحة "واجهات برمجة التطبيقات" تنفيذ ما يلي:

curl

لإدراج الفئات:

curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apicategories" \
    -H "Authorization: Bearer ACCESS_TOKEN"

غيِّر القيم في السلسلة على الشكل التالي:

  • ORG_NAME مع اسم المؤسسة مثلاً: my-org
  • SITE_ID مع اسم البوابة، في النموذج ORG_NAME-PORTAL_NAME، حيث يكون ORG_NAME هو اسم المؤسسة وPORTAL_NAME هو اسم البوابة الذي تم تحويله إلى أحرف صغيرة فقط مع إزالة المسافات والشرطات على سبيل المثال: my-org-myportal.
  • ACCESS_TOKEN مع رمز المصادقة المستخدَم للوصول إلى Apigee Edge API. لمزيد من المعلومات عن المصادقة والرموز المميّزة، يُرجى الاطّلاع على مقالة مصادقة الوصول إلى Edge API.

حمولة الردّ:

{
  "status": "success",
  "message": "all ApiCategory items returned",
  "data": [
    {
      "id": "e0518597-ece2-4d7d-ba7c-d1793df0f8db",
      "siteId": "my-org-myportal",
      "name": "My Category"
    },
    {
      "id": "61c1014c-89c9-40e6-be3c-69cca3505620",
      "siteId": "my-org-myportal",
      "name": "test2"
    }
  ],
  "code": null,
  "request_id": "1263510680",
  "error_code": null
}

المكان:

  • id: رقم تعريف عنصر الفئة على سبيل المثال: 61c1014c-89c9-40e6-be3c-69cca3505620.

إضافة فئة

أضِف فئة بإحدى الطريقتَين التاليتَين:

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

استخدِم واجهة المستخدم أو الأمر curl لإضافة فئة:

واجهة المستخدم

لإضافة فئة يدويًا:

  1. الدخول إلى صفحة "الفئات"
  2. انقر على + إضافة.
  3. أدخِل اسم الفئة الجديدة.
  4. اختياريًا، اختَر واجهة برمجة تطبيقات واحدة أو أكثر لتضمينها في الفئة.
  5. انقر على إنشاء.

curl

لإضافة فئة:

curl -X POST "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apicategories" \
    -H "Authorization: Bearer ACCESS_TOKEN" \
    -H "Content-Type: application/json" \
    -d '{"name": "CATEGORY_NAME" }'

غيِّر القيم في السلسلة على الشكل التالي:

  • ORG_NAME مع اسم المؤسسة مثلاً: my-org
  • SITE_ID مع اسم البوابة، في النموذج ORG_NAME-PORTAL_NAME، حيث يكون ORG_NAME هو اسم المؤسسة وPORTAL_NAME هو اسم البوابة الذي تم تحويله إلى أحرف صغيرة فقط مع إزالة المسافات والشرطات على سبيل المثال: my-org-myportal.
  • ACCESS_TOKEN مع رمز المصادقة المستخدَم للوصول إلى Apigee Edge API. لمزيد من المعلومات عن المصادقة والرموز المميّزة، يُرجى الاطّلاع على مقالة مصادقة الوصول إلى Edge API.
  • CATEGORY_NAME مع اسم الفئة. على سبيل المثال: demo-backend.

حمولة الردّ:

{
  "status": "success",
  "message": "API category created",
  "data": {
    "id": "61de810e-b48b-4cc1-8f22-959038aadcce",
    "siteId": "my-org-myportal",
    "name": "demo-backend"
  },
  "code": null,
  "request_id": "363146927",
  "error_code": null
}

تعديل فئة

استخدِم واجهة المستخدم أو الأمر curl لتعديل فئة:

واجهة المستخدم

لتعديل فئة:

  1. الدخول إلى صفحة "الفئات"
  2. انقر على تعديل.
  3. عدِّل اسم الفئة.
  4. إضافة علامات واجهة برمجة التطبيقات أو إزالتها
  5. انقر على حفظ.

curl

لتعديل فئة:

curl -X PATCH "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apicategories/CATEGORY_ID"  \
    -H "Authorization: Bearer ACCESS_TOKEN" \
    -H "Content-Type: application/json" \
    -d '{"name": "CATEGORY_NAME" }'

غيِّر القيم في السلسلة على الشكل التالي:

  • ORG_NAME مع اسم المؤسسة مثلاً: my-org
  • SITE_ID مع اسم البوابة، في النموذج ORG_NAME-PORTAL_NAME، حيث يكون ORG_NAME هو اسم المؤسسة وPORTAL_NAME هو اسم البوابة الذي تم تحويله إلى أحرف صغيرة فقط مع إزالة المسافات والشرطات على سبيل المثال: my-org-myportal.
  • CATEGORY_ID مع معرّف الفئة. على سبيل المثال، bf6505eb-2a0f-47af-a00a-ded40ac72960. افصل بين أرقام تعريف الفئات المتعددة بعلامة فاصلة. احصل على معرّف الفئة باستخدام الأمر list API categories.
  • ACCESS_TOKEN مع رمز المصادقة المستخدَم للوصول إلى Apigee Edge API. لمزيد من المعلومات عن المصادقة والرموز المميّزة، يُرجى الاطّلاع على مقالة مصادقة الوصول إلى Edge API.
  • CATEGORY_NAME مع اسم الفئة. على سبيل المثال: demo-backend.

حمولة الردّ:

{
  "status": "success",
  "message": "ApiCategory updated",
  "data": {
    "id": "61de810e-b48b-4cc1-8f22-959038aadcce",
    "siteId": "my-org-myportal",
    "name": "demo-backend-test"
  },
  "code": null,
  "request_id": "1976875617",
  "error_code": null
}

حذف فئة

عند حذف فئة، يتم أيضًا حذف جميع علامات واجهة برمجة التطبيقات المرتبطة بهذه الفئة.

استخدِم واجهة المستخدم أو الأمر curl لحذف فئة:

واجهة المستخدم

لحذف فئة:

  1. الدخول إلى صفحة "الفئات"
  2. ضع المؤشر فوق الفئة التي تريد تعديلها لعرض قائمة الإجراءات.
  3. انقر على حذف.
  4. انقر على حذف للتأكيد.

curl

لحذف فئة:

curl -X DELETE "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apicategories/CATEGORY_ID" \
    -H "Authorization: Bearer ACCESS_TOKEN" \
    -H "Content-Type: application/json"

غيِّر القيم في السلسلة على الشكل التالي:

  • ORG_NAME مع اسم المؤسسة مثلاً: my-org
  • SITE_ID مع اسم البوابة، في النموذج ORG_NAME-PORTAL_NAME، حيث يكون ORG_NAME هو اسم المؤسسة وPORTAL_NAME هو اسم البوابة الذي تم تحويله إلى أحرف صغيرة فقط مع إزالة المسافات والشرطات على سبيل المثال: my-org-myportal.
  • CATEGORY_ID مع معرّف الفئة. على سبيل المثال، bf6505eb-2a0f-47af-a00a-ded40ac72960. احصل على معرّف الفئة باستخدام الأمر list API categories.
  • ACCESS_TOKEN مع رمز المصادقة المستخدَم للوصول إلى Apigee Edge API. لمزيد من المعلومات عن المصادقة والرموز المميّزة، يُرجى الاطّلاع على مقالة مصادقة الوصول إلى Edge API.

حمولة الردّ:

{
  "status": "success",
  "message": "ApiCategory deleted",
  "data": {
  },
  "code": null,
  "request_id": "2032819627",
  "error_code": null
}

تحديد المشاكل في واجهات برمجة التطبيقات المنشورة وحلّها

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

الخطأ: تعذّر جلب الخطأ الذي تم إرجاعه عند استخدام واجهة برمجة التطبيقات Try this API

عند استخدام تجربة واجهة برمجة التطبيقات هذه، إذا تم عرض الخطأ TypeError: Failed to fetch ، ننصحك بالاطّلاع على الأسباب والحلول المحتملة التالية:

  • في ما يتعلّق بالأخطاء المتعلّقة بالمحتوى المختلط، قد يكون الخطأ ناتجًا عن مشكلة معروفة في swagger-ui. من بين الحلول الممكنة التأكّد من تحديد HTTPS قبل HTTP في تعريف schemes في مستند OpenAPI. على سبيل المثال:

    schemes:
       - https
       - http
    
  • بالنسبة إلى أخطاء القيود المفروضة على مشاركة الموارد المتعددة المصادر (CORS)، تأكَّد من أنّ مشاركة الموارد المتعددة المصادر (CORS) متوفرة في الخوادم الوكيلة لواجهة برمجة التطبيقات. بروتوكول CORS هو آلية عادية تتيح طلبات من مصدر خارجي من جهة العميل. راجِع مقالة ضبط الوكيل لواجهة برمجة التطبيقات لتفعيل ميزة "تجربة واجهة برمجة التطبيقات هذه".

خطأ: يحتوي عنوان Access-Control-Allow-Origin على قيم متعدّدة '*، *'، ولكن يُسمح بقيمة واحدة فقط

عند استخدام تجربة واجهة برمجة التطبيقات هذه، قد تظهر لك رسالة الخطأ التالية إذا كان عنوان Access-Control-Allow-Origin متوفّرًا من قبل:

The Access-Control-Allow-Origin header contains multiple values '*, *', but only one is allowed.

لتصحيح هذا الخطأ، عدِّل سياسة AssignMessage لاستخدام <Set> لضبط عناوين CORS بدلاً من <Add>، كما هو موضّح في المقتطف أدناه. لمزيد من المعلومات، اطّلِع على خطأ CORS : يحتوي العنوان على قيم متعدّدة '*، *"، ولكن يُسمح بقيمة واحدة فقط.

<AssignMessage async="false" continueOnError="false" enabled="true" name="add-cors">
    <DisplayName>Add CORS</DisplayName>
    <FaultRules/>
    <Properties/>
    <Set>
        <Headers>
            <Header name="Access-Control-Allow-Origin">{request.header.origin}</Header>
            <Header name="Access-Control-Allow-Headers">origin, x-requested-with, accept, content-type, authorization</Header>
            <Header name="Access-Control-Max-Age">3628800</Header>
            <Header name="Access-Control-Allow-Methods">GET, PUT, POST, DELETE</Header>
        </Headers>
    </Set>
    <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables>
    <AssignTo createNew="false" transport="http" type="response"/>
</AssignMessage>

خطأ: حقل عنوان الطلب غير مسموح به

عند استخدام تجربة واجهة برمجة التطبيقات هذه، إذا تلقّيت خطأ Request header field not allowed ، مشابهًا للمثال أدناه، قد تحتاج إلى تعديل الرؤوس المتوافقة في سياسة CORS. على سبيل المثال:

Access to XMLHttpRequest ... has been blocked by CORS policy: Request header field
content-type is not allowed by Access-Control-Allow-Headers in preflight response

في هذا المثال، عليك إضافة العنوان content-type إلى القسم Access-Control-Allow-Headers في سياسة CORS AssignMessage، كما هو موضّح في مقالة ربط سياسة إضافة CORS بخادم وكيل جديد لواجهة برمجة التطبيقات.

خطأ: تم رفض الوصول عند طلب خادم وكيل لواجهة برمجة التطبيقات باستخدام OAuth2

تُعرِض سياسة OAuthV2 في Apigee استجابة رمز مميّز تحتوي على خصائص معيّنة لا تمتثل لمعيار RFC. على سبيل المثال، ستُرجع السياسة رمز أمان يتضمن القيمة BearerToken بدلاً من القيمة المتّبَعة لمعيار RFC والتي تبلغ Bearer. يمكن أن يؤدي هذا الردّ غير الصالح على token_type إلى ظهور خطأ Access denied عند استخدام تجربة واجهة برمجة التطبيقات هذه.

لحلّ هذه المشكلة، يمكنك إنشاء سياسة JavaScript أو سياسة AssignMessage لتحويل ناتج السياسة إلى تنسيق متوافق. لمزيد من المعلومات، يُرجى الاطّلاع على السلوك غير المتوافق مع RFC.