Requirements of the YouTube API

Introduction to the YouTube API

YouTube is a popular service where end users can upload videos and watch videos uploaded by other channels. It has a huge repository of free-hosted videos with many additional features. YouTube provides various kinds of APIs to their users to perform different operations—for example, video searching, streaming, rating, uploading, sharing, and so on. However, the design of such APIs needs an in-depth understanding of the internal working of the system. In this chapter, we’ll learn about the workflow of the YouTube service and design API for each core operation, as discussed in the following section.

Let's start by considering the following requirements for designing the YouTube API.

Note: You might want to check the System Design: YouTube lesson to get a better idea of the API design we are going to discuss in this chapter.

Requirements

We consider the following functional and non-functional requirements that need to be met while designing the YouTube API.

Functional requirements

  • Video searching: Users should be able to search for a video through the vast repository of YouTube videos.

  • Video streaming: Users should be able to stream a video uninterruptedly.

  • Video preview: This service should allow users to obtain video trailers.

  • Rating a video: Each video needs to have a like or dislike button.

  • Video uploading: Users should be able to upload videos.

  • Comment on a video: Users should be able to add multiple comments on a video.

Create a free account to view this lesson.

By signing up, you agree to Educative's Terms of Service and Privacy Policy