إنشاء روابط ديناميكية باستخدام واجهة برمجة تطبيقات REST

يمكنك إنشاء Dynamic Links قصيرة باستخدام واجهة برمجة التطبيقات REST API لخدمة "روابط Firebase الديناميكية". تقبل واجهة برمجة التطبيقات هذه إما Dynamic Link طويلاً أو عنصرًا يحتوي على مَعلمات Dynamic Link، و تعرِض عنوان URL مثل المثال التالي:

https://example.page.link/WXYZ

لا تظهر فيديوهات Dynamic Links القصيرة التي تم إنشاؤها باستخدام واجهة برمجة التطبيقات وحزمة تطوير البرامج (SDK) للعميل (Android/Apple) في وحدة تحكّم Firebase. هذه Dynamic Links مخصّصة للمشاركة بين المستخدمين. بالنسبة إلى حالات الاستخدام التسويقية، يُرجى مواصلة إنشاء الروابط مباشرةً من خلال صفحة Dynamic Links في وحدة تحكّم Firebase.

قبل البدء

  1. احصل على مفتاح واجهة برمجة التطبيقات. ستحتاج إلى مفتاح واجهة برمجة التطبيقات لمصادقة طلباتك المرسَلة إلى واجهة برمجة التطبيقات. للعثور على مفتاح واجهة برمجة التطبيقات:
    1. افتح صفحة الإعدادات في وحدة تحكّم Firebase. إذا طُلب منك اختيار مشروع، اختَر مشروعك على Firebase من القائمة.
    2. دوِّن قيمة حقل مفتاح واجهة برمجة التطبيقات على الويب.
  2. في وحدة تحكّم Firebase، افتح قسم Dynamic Links.
  3. إذا لم يسبق لك قبول بنود الخدمة وإعداد نطاق لحسابك على Dynamic Links، يُرجى إجراء ذلك عندما يُطلب منك ذلك.

    إذا كان لديك نطاق Dynamic Links من قبل، دوِّنه. عليك تقديم نطاق Dynamic Links عند إنشاء Dynamic Links آليًا.

يمكنك استخدام واجهة برمجة التطبيقات Firebase Dynamic Links API لتقصير Dynamic Link طويل. لإجراء ذلك، أرسِل طلب HTTP POST إلى نقطة النهاية shortLinks، مع تحديد سمة Dynamic Link الطويلة في مَعلمة longDynamicLink. على سبيل المثال:

POST https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=api_key
Content-Type: application/json

{
   "longDynamicLink": "https://example.page.link/?link=https://www.example.com/&apn=com.example.android&ibi=com.example.ios"
}

اطّلِع على مقالة إنشاء عنوان URL يدويًا للتعرّف على كيفية إنشاء Dynamic Links طويل.

يمكنك أيضًا إنشاء Dynamic Link قصير من خلال تحديد مَعلمات Dynamic Link مباشرةً. لإجراء ذلك، قدِّم طلب HTTP POST إلى نقطة نهاية shortLinks، مع تحديد معلَمات Dynamic Link في المعلَمة dynamicLinkInfo. على سبيل المثال:

POST https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=api_key
Content-Type: application/json

{
  "dynamicLinkInfo": {
    "domainUriPrefix": "https://example.page.link",
    "link": "https://www.example.com/",
    "androidInfo": {
      "androidPackageName": "com.example.android"
    },
    "iosInfo": {
      "iosBundleId": "com.example.ios"
    }
  }
}

للاطّلاع على مواصفات كاملة للكائن dynamicLinkInfo، يُرجى الاطّلاع على مرجع واجهة برمجة التطبيقات.

ضبط مدة فيديو Shorts Dynamic Link

يمكنك أيضًا ضبط المَعلمة suffix لتحديد كيفية إنشاء عنصر المسار في Dynamic Link القصير.

بشكل تلقائي، أو إذا ضبطت المَعلمة على "UNGUESSABLE"، سيكون مكوّن المسار سلسلة من 17 حرفًا، كما في المثال التالي:

https://example.page.link/UVWXYZuvwxyz12345

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

إذا ضبطت المَعلمة على "SHORT"، سيكون عنصر المسار عبارة عن سلسلة يجب أن تكون فريدة فقط، ولا يقلّ طولها عن 4 أحرف.

https://example.page.link/WXYZ

استخدِم هذه الطريقة إذا لم يتم الكشف عن معلومات حسّاسة في حال تخمين عنوان URL قصير للسمة Dynamic Link.

يوضّح المثال التالي كيفية ضبط المَعلمة suffix:

POST https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=api_key
Content-Type: application/json

{
   "longDynamicLink": "https://example.page.link/?link=http://www.example.com/&apn=com.example.android&ibi=com.example.ios",
   "suffix": {
     "option": "UNGUESSABLE"
   }
}

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

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

بعد إنشاء Dynamic Links، عليك إعداد تطبيقك لتلقّي Dynamic Links وإرسال المستخدمين إلى المكان المناسب في تطبيقك بعد فتحه.

لتلقّي Dynamic Links في تطبيقك، اطّلِع على مستندات iOS وAndroid و C++ وUnity.

تقتصر الطلبات على 5 طلبات لكل عنوان IP في الثانية و200,000 طلب في اليوم. وفي حال تجاوز هذا الحدّ، سيعرض الردّ رمز الخطأ 429 في HTTP. لطلب الحصول على حصة أكبر، يُرجى ملء هذا النموذج.