Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Hướng dẫn bắt đầu nhanh này giải thích cách thiết lập một ứng dụng dòng lệnh PHP đơn giản để đưa ra các yêu cầu đối với YouTube Data API. Hướng dẫn bắt đầu nhanh này thực sự giải thích cách đưa ra 2 yêu cầu API:
Bạn sẽ sử dụng một khoá API (khoá này xác định ứng dụng của bạn) để truy xuất thông tin về kênh YouTube GoogleDevelopers.
Bạn sẽ sử dụng mã ứng dụng khách OAuth 2.0 để gửi một yêu cầu được uỷ quyền nhằm truy xuất thông tin về kênh YouTube của riêng bạn.
Điều kiện tiên quyết
Để chạy hướng dẫn bắt đầu nhanh này, bạn cần có:
PHP 5.4 trở lên có giao diện dòng lệnh (CLI) và tiện ích JSON đã cài đặt.
Tạo hoặc chọn một dự án trong Bảng điều khiển API. Hoàn tất các việc sau trong API Console cho dự án của bạn:
Trong bảng điều khiển thư viện, hãy tìm YouTube Data API phiên bản 3. Nhấp vào trang thông tin của API đó và đảm bảo rằng API đã được bật cho dự án của bạn.
Tạo khoá API
Bạn sẽ dùng khoá API để thực hiện các yêu cầu API không yêu cầu người dùng uỷ quyền. Ví dụ: bạn không cần có sự cho phép của người dùng để truy xuất thông tin về một kênh YouTube công khai.
Tạo mã ứng dụng OAuth 2.0
Đặt loại ứng dụng thành Khác. Bạn cần sử dụng thông tin đăng nhập OAuth 2.0 cho những yêu cầu cần có sự uỷ quyền của người dùng. Ví dụ: bạn cần có sự uỷ quyền của người dùng để truy xuất thông tin về kênh YouTube của người dùng hiện đã xác thực.
Tải tệp JSON chứa thông tin đăng nhập OAuth 2.0 xuống. Tệp này có tên như client_secret_CLIENTID.json, trong đó CLIENTID là mã ứng dụng khách cho dự án của bạn.
Bước 2: Thiết lập và chạy mẫu
Sử dụng tiện ích Trình khám phá API trong bảng điều khiển bên để lấy mã mẫu nhằm truy xuất thông tin về kênh YouTube GoogleDevelopers. Yêu cầu này sử dụng khoá API để xác định ứng dụng của bạn và không yêu cầu người dùng uỷ quyền hoặc bất kỳ quyền đặc biệt nào từ người dùng chạy mẫu.
Trên trang đó, phần "Các trường hợp sử dụng phổ biến" có một bảng giải thích một số cách phổ biến mà phương thức này được sử dụng. Mục đầu tiên trong bảng là để liệt kê kết quả theo mã nhận dạng kênh.
Nhấp vào biểu tượng mã cho mục đầu tiên để mở và điền thông tin vào Trình khám phá API ở chế độ toàn màn hình.
Phía bên trái của Trình khám phá API toàn màn hình cho thấy những nội dung sau:
Bên dưới tiêu đề Tham số yêu cầu, có một danh sách các tham số mà phương thức này hỗ trợ. Bạn nên đặt giá trị tham số part và id. Giá trị tham số id, UC_x5XG1OV2P6uZZ5FSM9Ttw, là mã nhận dạng của kênh YouTube GoogleDevelopers.
Bên dưới các tham số, có một phần tên là Credentials (Thông tin đăng nhập). Trình đơn kéo xuống trong phần đó sẽ hiển thị giá trị Khoá API. Theo mặc định, Trình khám phá API sử dụng thông tin đăng nhập minh hoạ để giúp bạn dễ dàng bắt đầu. Nhưng bạn sẽ dùng khoá API của riêng mình để chạy mẫu trên máy.
Phía bên phải của Trình khám phá API ở chế độ toàn màn hình cho thấy các thẻ có mẫu mã bằng nhiều ngôn ngữ. Chọn thẻ PHP.
Sao chép mẫu mã rồi lưu vào một tệp có tên là example.php.
Trong mẫu mà bạn đã tải xuống, hãy tìm chuỗi YOUR_API_KEY rồi thay thế chuỗi đó bằng khoá API mà bạn đã tạo ở bước 1 của hướng dẫn nhanh này.
Chạy mẫu từ dòng lệnh. Trong thư mục làm việc, hãy chạy:
php example.php
Mẫu này sẽ thực thi yêu cầu và in phản hồi vào STDOUT.
Bước 3: Chạy một yêu cầu được uỷ quyền
Trong bước này, bạn sẽ sửa đổi mẫu mã để thay vì truy xuất thông tin về kênh YouTube GoogleDevelopers, mẫu mã sẽ truy xuất thông tin về kênh YouTube của bạn. Yêu cầu này bắt buộc phải có sự uỷ quyền của người dùng.
Quay lại tài liệu về phương thức channels.list của API.
Trong phần "Các trường hợp sử dụng phổ biến", hãy nhấp vào biểu tượng mã cho mục thứ ba trong bảng. Trường hợp sử dụng đó là gọi phương thức list cho "kênh của tôi".
Một lần nữa, ở bên trái của Trình khám phá API ở chế độ toàn màn hình, bạn sẽ thấy danh sách các tham số, theo sau là phần Thông tin đăng nhập. Tuy nhiên, có 2 thay đổi so với ví dụ mà bạn truy xuất thông tin về kênh GoogleDevelopers:
Trong phần tham số, thay vì đặt giá trị tham số id, bạn nên đặt giá trị tham số mine thành true. Thao tác này hướng dẫn máy chủ API truy xuất thông tin về kênh của người dùng hiện đã xác thực.
Trong phần Credentials (Thông tin đăng nhập), trình đơn kéo xuống phải chọn lựa chọn Google OAuth 2.0.
Ngoài ra, nếu bạn nhấp vào đường liên kết Hiện phạm vi, bạn nên đánh dấu vào phạm vi https://www.googleapis.com/auth/youtube.readonly.
Giống như ví dụ trước, hãy chọn thẻ PHP, sao chép mã mẫu và lưu vào example.php.
Trong mã, hãy tìm chuỗi YOUR_CLIENT_SECRET_FILE.json rồi thay thế bằng vị trí của tệp khoá bí mật của ứng dụng mà bạn đã tải xuống ở bước 1 của hướng dẫn bắt đầu nhanh này.
Chạy mẫu từ dòng lệnh. Trong thư mục làm việc, hãy chạy:
php example.php
Sao chép URL từ bảng điều khiển rồi mở URL đó trong trình duyệt.
Nếu chưa đăng nhập vào Tài khoản Google, bạn sẽ được nhắc đăng nhập. Nếu đã đăng nhập vào nhiều Tài khoản Google, bạn sẽ được yêu cầu chọn một tài khoản để dùng cho việc uỷ quyền.
Nhấp vào nút này để cấp cho ứng dụng của bạn quyền truy cập vào các phạm vi được chỉ định trong mẫu mã.
Sao chép mã uỷ quyền từ trình duyệt rồi dán vào thiết bị đầu cuối. Sau đó, bạn có thể đóng thẻ trình duyệt dùng cho quy trình uỷ quyền.
[null,null,["Cập nhật lần gần đây nhất: 2025-08-21 UTC."],[[["\u003cp\u003eThis guide demonstrates setting up a PHP command-line application to interact with the YouTube Data API.\u003c/p\u003e\n"],["\u003cp\u003eThe guide covers making two distinct API requests: one using an API key to get information about the GoogleDevelopers YouTube channel, and another using OAuth 2.0 to access data about your own YouTube channel.\u003c/p\u003e\n"],["\u003cp\u003eTo run this quickstart, you'll need PHP 5.4 or greater, the Composer dependency management tool, and the Google APIs Client Library for PHP.\u003c/p\u003e\n"],["\u003cp\u003eThe setup involves creating an API key for public data requests and an OAuth 2.0 client ID for requests needing user authorization, both within the Google API Console.\u003c/p\u003e\n"],["\u003cp\u003eThe guide will also help with running an authorized request by using the \u003cem\u003emine\u003c/em\u003e parameter set to true, which fetches information for the authenticated user's channel.\u003c/p\u003e\n"]]],["This guide demonstrates using the YouTube Data API with PHP. It outlines two types of API requests: one using an API key to retrieve public channel data, and another using OAuth 2.0 for authorized access to a user's own channel data. The process involves setting up a project in the API Console, enabling the YouTube Data API, and generating both an API key and an OAuth 2.0 client ID. Sample code is provided and instructions are given for updating parameters, integrating credentials and running the scripts to retrieve information from the API.\n"],null,["# PHP Quickstart\n\nThis quickstart guide explains how to set up a simple, PHP\ncommand-line application that makes requests to the YouTube Data API. This\nquickstart actually explains how to make two API requests:\n\n1. You will use an API key, which identifies your application, to retrieve information about the GoogleDevelopers YouTube channel.\n2. You will use an OAuth 2.0 client ID to submit an *authorized* request that retrieves information about your own YouTube channel.\n\n| **Note:** More generally, you can follow the instructions for the first example for any use case that uses an API key or the instructions for the second example for any use case that requires authorization using OAuth 2.0. See the [use cases and code samples tool](/youtube/v3/code_samples/code_snippets) for more examples.\n\nPrerequisites\n-------------\n\nTo run this quickstart, you'll need:\n\n- PHP 5.4 or greater with the command-line interface (CLI) and JSON extension installed.\n- The Composer dependency management tool [installed globally](https://getcomposer.org/doc/00-intro.md#globally) {: target=\"_blank\"}\n- The Google APIs Client Library for PHP:\n - If you have not previously installed the client library: \n\n ```\n composer require google/apiclient:^2.0\n ```\n - If you previously installed the client library, we recommend updating it to ensure that you have the most up-to-date classes for the library you are testing: \n\n ```\n composer update google/apiclient --with-dependencies\n ```\n\nStep 1: Set up your project and credentials\n-------------------------------------------\n\nCreate or select a project in the [API Console](https://console.cloud.google.com/). Complete the following tasks in the API Console for your project:\n\n1. In the [library panel](https://console.developers.google.com/apis/library),\n search for the YouTube Data API v3. Click into the listing for that API and\n make sure the API is enabled for your project.\n\n2. In the [credentials\n panel](https://console.developers.google.com/apis/credentials),\n create two credentials:\n\n 1. **Create an API key**\n You will use the API key to make API requests that do\n not require user authorization. For example, you do not need user\n authorization to retrieve information about a public YouTube channel.\n\n 2. **Create an OAuth 2.0 client ID**\n\n Set the application type to **Other**. You need to use OAuth 2.0\n credentials for requests that require user authorization. For example,\n you need user authorization to retrieve information about the currently\n authenticated user's YouTube channel.\n\n Download the JSON file that contains your OAuth 2.0 credentials. The\n file has a name like `client_secret_CLIENTID.json`, where `CLIENTID` is\n the client ID for your project.\n\nStep 2: Set up and run the sample\n---------------------------------\n\nUse the APIs Explorer widget in the side panel to obtain sample code for\nretrieving information about the GoogleDevelopers YouTube channel. This request\nuses an API key to identify your application, and it does not require user\nauthorization or any special permissions from the user running the sample.\n\n1. Open the documentation for the API's [channels.list](/youtube/v3/docs/channels/list) method.\n2. On that page, the \"Common use cases\" section contains a table that explains\n several common ways that the method is used. The first listing in the table\n is for listing results by channel ID.\n\n Click the code symbol for the first listing to open and populate the\n fullscreen APIs Explorer.\n\n3. The left side of the fullscreen APIs Explorer shows the following:\n\n 1. Below the **Request parameters** header, there is a list of parameters\n that the method supports. The `part` and `id` parameter values should\n be set. The `id` parameter value, `UC_x5XG1OV2P6uZZ5FSM9Ttw`, is the\n ID for the GoogleDevelopers YouTube channel.\n\n 2. Below the parameters, there is a section named **Credentials** . The\n pulldown menu in that section should display the value **API key**. The\n APIs Explorer uses demo credentials by default to make it easier to get\n started. But you'll use your own API key to run the sample locally.\n\n4. The right side of the fullscreen APIs Explorer shows tabs with code samples\n in different languages. Select the **PHP** tab.\n\n5. Copy the code sample and save it in a file named\n `example.php`.\n\n6. In the sample that you downloaded, find the `YOUR_API_KEY` string and\n replace that with the API key that you created in step 1 of this quickstart.\n\n7. Run the sample from the command line. In your working directory, run:\n\n\n `php example.php`\n\n8. The sample should execute the request and print the response to `STDOUT`.\n\nStep 3: Run an authorized request\n---------------------------------\n\nIn this step, you'll modify your code sample so that instead of retrieving\ninformation about the GoogleDevelopers YouTube channel, it retrieves information\nabout *your* YouTube channel. This request does require user authorization.\n\n1. Go back to the documentation for the API's\n [channels.list](/youtube/v3/docs/channels/list) method.\n\n2. In the \"Common use cases\" section, click the code symbol for the third\n listing in the table. That use case is to call the `list` method for \"my\n channel.\"\n\n3. Again, in the left side of the fullscreen APIs Explorer, you will see a\n list of parameters followed by the **Credentials** section. However, there\n are two changes from the example where you retrieved information about the\n GoogleDevelopers channel:\n\n 1. In the parameters section, instead of the `id` parameter value being\n set, the `mine` parameter value should be set to `true`. This instructs\n the API server to retrieve information about the currently authenticated\n user's channel.\n\n 2. In the **Credentials** section, the pulldown menu should select the\n option for **Google OAuth 2.0**.\n\n In addition, if you click the **Show scopes** link, the\n **https://www.googleapis.com/auth/youtube.readonly** scope should be\n checked.\n\n4. As with the previous example, select the **PHP** tab,\n copy the code sample, and save it to `example.php`.\n\n\n In the code, find the `YOUR_CLIENT_SECRET_FILE.json` string and replace\n it with the location of the client secret file you downloaded in step 1\n of this quickstart.\n5. Run the sample from the command line. In your working directory, run:\n\n\n `php example.php`\n\n6. \u003cbr /\u003e\n\n\n Copy the URL from the console and open it in your browser.\n\n If you are not already logged into your Google account, you will be\n prompted to log in. If you are logged into multiple Google accounts, you\n will be asked to select one account to use for the authorization.\n7. Click the button to grant your application access to the scopes specified in\n your code sample.\n\n8. \u003cbr /\u003e\n\n\n Copy the auth code from the browser and paste it into your terminal. You can\n then close the browser tab used for the auth flow.\n\n The API response should again be printed to `STDOUT`.\n\nFurther reading\n---------------\n\n- [Google Developers Console help documentation](/console/help/new)\n- [Google APIs Client Library for PHP documentation](/api-client-library/php)\n- [Google APIs Client Library for PHP on GitHub](https://github.com/googleapis/google-api-php-client) and [autogenerated classes](https://github.com/googleapis/google-api-php-client-services/tree/master/src/Google/Service) for the YouTube API. (On the page, find the `YouTube` folder and the `YouTube.php` file.\n- [YouTube Data API reference documentation](/youtube/v3/docs)"]]