توضّح الأمثلة التالية كيفية استخدام YouTube Data API (الإصدار 3) لتنفيذ وظائف متعلقة بالفيديوهات.
استرداد الفيديوهات التي تم تحميلها في قناة
يسترد هذا المثال الفيديوهات التي تم تحميلها إلى قناة معيّنة. يتضمن المثال خطوتَين:
-
الخطوة 1: استرداد رقم تعريف قائمة التشغيل للفيديوهات التي تم تحميلها على القناة
يمكنك استدعاء الطريقة
channels.list
لاسترداد رقم تعريف قائمة التشغيل التي تتضمّن الفيديوهات التي تم تحميلها إلى القناة. يجب أن تتضمن قيمة مَعلمةpart
للطلبcontentDetails
كجزء من أجزاء الموردchannel
التي يتم استردادها. في استجابة واجهة برمجة التطبيقات، تحتوي السمةcontentDetails.relatedPlaylists.uploads
على رقم تعريف قائمة التشغيل.تتوفّر عدة طرق لتحديد القناة:
-
يمكنك ضبط قيمة المعلَمة
mine
علىtrue
لاسترداد معلومات قناة المستخدم التي تمت المصادقة عليها حاليًا على YouTube. يجب تفويض طلبك باستخدام OAuth 2.0.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &mine=true
-
اضبط المَعلمة
forUsername
على اسم مستخدم YouTube لاسترداد معلومات القناة المرتبطة باسم المستخدم هذا. يحدّد هذا المثال قيمة المعلَمةforUsername
علىGoogle
لاسترداد معلومات القناة الرسمية على Google.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &forUsername=Google
-
اضبط المَعلمة
id
على معرّف القناة على YouTube الذي يعرّف القناة بشكلٍ فريد لاسترداد المعلومات. يحدّد هذا المثال المعلمةid
إلىUCK8sQmJBp8GCxrOtXWBpyEA
، التي تحدّد أيضًا قناة Google الرسمية على YouTube.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &id=UCK8sQmJBp8GCxrOtXWBpyEA
-
-
الخطوة الثانية: استرداد قائمة الفيديوهات التي تم تحميلها
يمكنك استدعاء الطريقة
playlistItems.list
لاسترداد قائمة الفيديوهات التي تم تحميلها. اضبط قيمة المَعلمةplaylistId
على القيمة التي تم الحصول عليها في الخطوة 1. في هذا المثال، يتم ضبط قيمة المَعلمة علىUUK8sQmJBp8GCxrOtXWBpyEA
، وهي قائمة بالفيديوهات التي تم تحميلها إلى قناة Google الرسمية على Google.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlistItems.list? part=snippet,contentDetails,status &playlistId=UUK8sQmJBp8GCxrOtXWBpyEA
استرداد الفيديوهات الأكثر رواجًا
يوضح هذا المثال كيفية استرداد قائمة بالفيديوهات الأكثر رواجًا على YouTube، والتي يتم اختيارها باستخدام خوارزمية تجمع بين عدة إشارات مختلفة لتحديد مدى رواجها بشكل عام.
لاسترداد قائمة الفيديوهات الأكثر رواجًا، اطلب طريقة videos.list
واضبط قيمة المَعلمة chart
على mostPopular
. عند استرداد هذه القائمة، يمكنك أيضًا ضبط كلتا المَعلمتَين التاليتَين أو كلتيهما:
regionCode
: لاستخدام واجهة برمجة التطبيقات في عرض قائمة بالفيديوهات للمنطقة المحدّدةvideoCategoryId
: يحدد فئة الفيديو التي يجب استرداد الفيديوهات الأكثر رواجًا منها.
يعرض الطلب أدناه الفيديوهات الرياضية الأكثر رواجًا في إسبانيا:
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.search.list? part=snippet &chart=mostPopular ®ionCode=es &videoCategoryId=17
تحميل فيديو
نظرًا لأن مستكشف واجهات برمجة التطبيقات لا يتيح إمكانية تحميل الملفات، لا يرتبط هذا الوصف بمثال قابل للتنفيذ. ستساعدك المراجع التالية على تعديل تطبيقك ليتمكّن من تحميل الفيديوهات باستخدام واجهة برمجة التطبيقات v3 API:
-
تتضمن المواد المتعلقة بطريقة videos.insert لواجهة برمجة التطبيقات عدة عيّنات من الرموز تشرح كيفية تحميل فيديو باستخدام لغات برمجة مختلفة.
-
يوضّح دليل عمليات التحميل القابلة للاستئناف تسلسل طلبات HTTP التي يستخدمها التطبيق لتحميل الفيديوهات باستخدام عملية تحميل قابلة للاستئناف. يستهدف هذا الدليل في المقام الأول مطوّري البرامج الذين لا يمكنهم استخدام مكتبات برامج Google API، حيث يقدم بعضها دعمًا أصليًا لعمليات التحميل القابلة للاستئناف.
-
يستخدم مثال JavaScript لتحميل فيديو سياسة مشاركة الموارد المتعددة المصادر (CORS) (CORS) لتوضيح كيفية تحميل ملف فيديو من خلال صفحة ويب. مكتبة تحميل سياسة مشاركة الموارد المتعددة المصادر (CORS) التي تستخدمها واجهة برمجة التطبيقات الإصدار 3 تتوافق بشكل طبيعي مع التحميل القابل للاستئناف. بالإضافة إلى ذلك، يوضّح المثال كيفية التحقّق من حالة فيديو تم تحميله من خلال استرداد الجزء
processingDetails
من الموردvideo
بالإضافة إلى كيفية التعامل مع التغييرات في حالة الفيديو الذي تم تحميله.
التحقق من حالة فيديو تم تحميله
يوضح هذا المثال كيفية التحقق من حالة فيديو تم تحميله. سيظهر الفيديو الذي تم تحميله على الفور في خلاصة الفيديوهات التي حمّلها المستخدم الذي تمت مصادقته. ومع ذلك، لن يظهر الفيديو على YouTube إلى أن تتم معالجته.
-
الخطوة الأولى: تحميل الفيديو
استخدام طريقة
videos.insert
من أجل تحميل الفيديو إذا تم قبول الطلب، ستتضمّن استجابة واجهة برمجة التطبيقات موردًاvideo
يحدّد معرّف الفيديو الفريد الذي تم تحميله. -
الخطوة الثانية: التحقّق من حالة الفيديو
اطلب طريقة
videos.list
للتحقّق من حالة الفيديو. اضبط قيمة المَعلمةid
على معرّف الفيديو الذي تم الحصول عليه في الخطوة 1. اضبط قيمة المَعلمةpart
علىprocessingDetails
.إذا تم التعامل مع الطلب بنجاح، ستحتوي استجابة واجهة برمجة التطبيقات على مورد
video
. يُرجى التحقق من قيمة السمةprocessingDetails.processingStatus
لتحديد ما إذا كانت منصة YouTube لا تزال تعالج الفيديو. ستتغيّر قيمة الموقع الإلكتروني إلى قيمة أخرى غيرprocessing
، مثلsucceeded
أوfailed
، عندما تنتهي منصة YouTube من معالجة الفيديو.نص الطلب هو مورد
video
حيث تحدّد السمةid
معرّف الفيديو الذي تريد حذفه. في هذا المثال، يحتوي المورد أيضًا على عنصرrecordingDetails
.يعرض الطلب أدناه حالة فيديو معيّن. لإكمال الطلب في مستكشف واجهات برمجة التطبيقات، يجب ضبط قيمة السمة
id
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.list? part=snippet,processingDetails &id=VIDEO_ID
ملاحظة: يمكن أن يستخدم تطبيقك واجهة برمجة التطبيقات للتحقّق بشكل دوري من حالة فيديو تم تحميله مؤخرًا. بعد معالجة الفيديو، يمكن أن ينشئ طلبك نشرة إخبارية أو يُطلب منك اتخاذ إجراء آخر مشروطًا بحالة الفيديو.
تعديل فيديو
يوضح هذا المثال كيفية تعديل فيديو لإضافة معلومات عن وقت ومكان تسجيل الفيديو. يتضمن المثال الخطوات التالية:
-
الخطوة الأولى: استرداد معرّف الفيديو
اتّبِع الخطوات أعلاه لاسترداد الفيديوهات التي تم تحميلها لقناة المستخدم الذي تمت مصادقته حاليًا. يمكن استخدام القائمة لعرض قائمة بالفيديوهات باستخدام معرّف كل فيديو كمفتاح.
ملاحظة: تتوفر العديد من الطرق الأخرى للحصول على معرّفات الفيديوهات، مثل استرداد نتائج البحث أو عرض عناصر قائمة التشغيل. وبما أنّه لا يمكن لأحد تعديل الفيديو سوى مالكه، يُعدّ استرداد قائمة الفيديوهات التي يملكها المستخدم الذي فوّضه طلب البيانات من واجهة برمجة التطبيقات خطوة أولى على الأرجح في هذه العملية.
-
الخطوة 2: تعديل فيديو
يمكنك اتّباع الطريقة
videos.update
لتعديل فيديو محدّد. اضبط قيمة المَعلمةpart
علىrecordingDetails
. (تعتمد قيمة المعلمة على حقول البيانات الوصفية للفيديو التي يتم تحديثها.)نص الطلب هو مورد
video
حيث تحدّد السمةid
معرّف الفيديو الذي تريد تعديله. في هذا المثال، يحتوي المورد أيضًا على عنصرrecordingDetails
.يشير نموذج المورد أدناه إلى أنه تم تسجيل الفيديو في 30 تشرين الأول (أكتوبر) 2013، في بوسطن:
{ "id": "VIDEO_ID", "recordingDetails": { "location": { "latitude": "42.3464", "longitude": "-71.0975" } "recordingDate": "2013-10-30T23:15:00.000Z" } }
لإكمال الطلب في مستكشف واجهات برمجة التطبيقات، يجب ضبط قيمة السمة
id
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.update? part=snippet
تحميل صورة مصغّرة مخصّصة وضبطها لفيديو
يمكنك استخدام طريقة thumbnails.set
الخاصة بواجهة برمجة التطبيقات v3 لتحميل صورة مصغّرة مخصّصة وضبطها للفيديو. في طلبك، تحدّد قيمة المعلَمة videoId
الفيديو الذي سيتم استخدام الصورة المصغّرة له.
لا يمكن اختبار هذا الطلب باستخدام مستكشف واجهات برمجة التطبيقات لأن مستكشف واجهات برمجة التطبيقات لا يتيح إمكانية تحميل ملفات الوسائط، وهو شرط لهذه الطريقة.
حذف فيديو
يوضح هذا المثال كيفية حذف فيديو. يتضمن المثال الخطوات التالية:
-
الخطوة الأولى: استرداد معرّف الفيديو
اتّبِع الخطوات أعلاه لاسترداد الفيديوهات التي تم تحميلها لقناة المستخدم الذي تمت مصادقته حاليًا. يمكن استخدام القائمة لعرض قائمة بالفيديوهات باستخدام معرّف كل فيديو كمفتاح.
ملاحظة: تتوفر العديد من الطرق الأخرى للحصول على معرّفات الفيديوهات، مثل استرداد نتائج البحث أو عرض عناصر قائمة التشغيل. بما أنّه لا يمكن لمالك الفيديو حذف الفيديو إلا، يُحتمَل أن تكون عملية استرداد قائمة بالفيديوهات التي يملكها المستخدم الذي فوّضه طلب البيانات من واجهة برمجة التطبيقات هي الخطوة الأولى في هذه العملية.
-
الخطوة 2: حذف فيديو
يمكنك استدعاء الطريقة
videos.delete
لحذف فيديو معيّن. في الطلب، تحدّد المعلّمةid
معرّف الفيديو الذي تريد حذفه. يجب تفويض الطلب باستخدام OAuth 2.0. في حال اختبار هذا الطلب في "مستكشف واجهات برمجة التطبيقات"، ستحتاج إلى استبدال معرّف فيديو صالح بقيمة المعلّمةid
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.delete? id=VIDEO_ID
الإبلاغ عن فيديو مسيء
يعرض هذا المثال كيفية الإبلاغ عن فيديو يتضمّن محتوًى مسيئًا. يتضمن المثال الخطوات التالية:
-
الخطوة 1: استرداد المعرّفات التي توضّح سبب الإبلاغ عن الفيديو
يمكنك إرسال طلب مفوّض إلى الطريقة
videoAbuseReportReasons.list
لاسترداد قائمة بالأسباب الصالحة للإبلاغ عن فيديو. يحتوي نموذج موردvideoAbuseReportReason
أدناه على معلومات حول الإبلاغ عن فيديو يتضمن محتوى غير مرغوب فيه أو مضلّلاً.{ "kind": "youtube#videoAbuseReportReason", "etag": "\"tbWC5XrSXxe1WOAx6MK9z4hHSU8/Or2VqBIilpHU7j__oPzUFCvGVBw\"", "id": "S", "snippet": { "label": "Spam or misleading", "secondaryReasons": [ { "id": "27", "label": "Spam or mass advertising" }, { "id": "28", "label": "Misleading thumbnail" }, { "id": "29", "label": "Malware or phishing" }, { "id": "30", "label": "Pharmaceutical drugs for sale" }, { "id": "31", "label": "Other misleading info" } ] } }
كما هو موضّح في المورد، يرتبط هذا السبب بقائمة من الأسباب الثانوية. عند الإبلاغ عن فيديو لأنّه يتضمّن محتوًى غير مرغوب فيه، عليك تقديم المعرّف للسبب وننصح بتشجيعه على تقديم سبب ثانوي أيضًا.
-
الخطوة 2: الإبلاغ عن الفيديو بحثًا عن محتوى مسيء
يمكنك إرسال طلب مفوّض إلى الطريقة
تحدد السمةvideos.reportAbuse
للإبلاغ عن الفيديو. نص الطلب هو عنصر JSON يحدّد الفيديو الذي يتم الإبلاغ عنه وسبب الإبلاغ عنه. كما هو موضح في الخطوة 1، بالنسبة إلى بعض أنواع الأسباب، يتم دعم السبب الثانوي وتشجيعه بشدة.videoId
في عنصر JSON الفيديو الذي يتم الإبلاغ عنه.يحدد نموذج JSON أدناه فيديو يحتوي على محتوى غير مرغوب فيه أو مضلّل، وعلى وجه التحديد، لاستخدام صورة مصغّرة مضلّلة. كما هو موضّح في نموذج JSON أعلاه، يكون رقم تعريف المحتوى المحتوى غير المرغوب فيه أو المضلِّل هو S. إنّ رقم تعريف الصورة المصغّرة المضلّلة هو 28.
{ "videoId": "VIDEO_ID", "reasonId": "S", "secondaryReasonId": "28", "comments": "Testing the video flagging feature.", "language": "en" }
يجب تفويض طلب
videos.reportAbuse
باستخدام OAuth 2.0. يُحمّل الرابط أدناه عنصر JSON أعلاه في مستكشف واجهات برمجة التطبيقات. لاختبار طلب البحث، يجب استبدال معرّف الفيديو الصالح بقيمة السمةvideoId
. يُرجى العِلم أنّ إرسال هذا الطلب سيؤدي إلى الإبلاغ عن الفيديو.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.reportAbuse