Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
En esta guía de inicio rápido, se explica cómo configurar una aplicación de línea de comandos simple en Java que realiza solicitudes a la API de YouTube Data. En realidad, en este inicio rápido, se explica cómo realizar dos solicitudes a la API:
Usarás una clave de API, que identifica tu aplicación, para recuperar información sobre el canal de YouTube de GoogleDevelopers.
Usarás un ID de cliente de OAuth 2.0 para enviar una solicitud autorizada que recupere información sobre tu propio canal de YouTube.
Requisitos previos
Para ejecutar esta guía de inicio rápido, necesitarás lo siguiente:
Crea o selecciona un proyecto en la Consola de APIs. Completa las siguientes tareas en la Consola de APIs de tu proyecto:
En el panel de la biblioteca, busca la versión 3 de la API de YouTube Data. Haz clic en la ficha de esa API y asegúrate de que esté habilitada para tu proyecto.
Crea una clave de API. Usarás la clave de API para realizar solicitudes a la API que no requieran autorización del usuario. Por ejemplo, no necesitas la autorización del usuario para recuperar información sobre un canal público de YouTube.
Crea un ID de cliente de OAuth 2.0.
Establece el tipo de aplicación como Otro. Debes usar credenciales de OAuth 2.0 para las solicitudes que requieren autorización del usuario. Por ejemplo, necesitas la autorización del usuario para recuperar información sobre el canal de YouTube del usuario autenticado actualmente.
Descarga el archivo JSON que contiene tus credenciales de OAuth 2.0. El archivo tiene un nombre como client_secret_CLIENTID.json, donde CLIENTID es el ID de cliente de tu proyecto.
Paso 2: Prepara el proyecto
Completa los siguientes pasos para preparar tu proyecto de Gradle:
En tu directorio de trabajo, ejecuta los siguientes comandos para crear una nueva estructura de proyecto:
Mueve el archivo JSON que descargaste después de crear tu ID de cliente OAuth 2.0 al directorio src/main/resources que se encuentra debajo de tu directorio de trabajo y cambia el nombre del archivo a client_secret.json.
Abre el archivo build.gradle en tu directorio de trabajo y reemplaza su contenido por lo siguiente:
En el archivo build.gradle, debes reemplazar las variables REVISION y CL_VERSION por dos valores de la documentación de la biblioteca cliente de la API de YouTube Data. En la siguiente captura de pantalla, que muestra la documentación de la API de YouTube Analytics, se indica dónde aparecen las dos variables en la página.
Paso 3: Configura y ejecuta la muestra
Usa el widget del Explorador de APIs en el panel lateral para obtener código de muestra para recuperar información sobre el canal de YouTube de GoogleDevelopers. Esta solicitud usa una clave de API para identificar tu aplicación y no requiere autorización del usuario ni permisos especiales del usuario que ejecuta la muestra.
Abre la documentación del método channels.list de la API.
En esa página, la sección "Casos de uso comunes" contiene una tabla que explica varias formas comunes en las que se usa el método. El primer elemento de la tabla es para los resultados de la lista por ID de canal.
Haz clic en el símbolo de código de la primera lista para abrir y completar el Explorador de APIs en pantalla completa.
En el lado izquierdo del Explorador de APIs en pantalla completa, se muestra lo siguiente:
Debajo del encabezado Request parameters, hay una lista de parámetros que admite el método. Se deben establecer los valores de los parámetros part y id. El valor del parámetro id, UC_x5XG1OV2P6uZZ5FSM9Ttw, es el ID del canal de YouTube de GoogleDevelopers.
Debajo de los parámetros, hay una sección llamada Credenciales. El menú desplegable de esa sección debería mostrar el valor Clave de API. De forma predeterminada, el Explorador de APIs usa credenciales de demostración para facilitar el inicio. Sin embargo, usarás tu propia clave de API para ejecutar la muestra de forma local.
En el lado derecho del Explorador de APIs en pantalla completa, se muestran pestañas con muestras de código en diferentes lenguajes. Selecciona la pestaña Java.
Copia el código de muestra y guárdalo en un archivo llamado src/main/java/ApiExample.java.
Cada muestra usa el mismo nombre de clase (ApiExample) para que no necesites modificar el archivo build.gradle para ejecutar diferentes muestras.
En el ejemplo que descargaste, busca la cadena YOUR_API_KEY y reemplázala por la clave de API que creaste en el paso 1 de esta guía de inicio rápido.
Ejecuta la muestra desde la línea de comandos. En tu directorio de trabajo, ejecuta lo siguiente:
gradle -q run
La muestra debe ejecutar la solicitud y mostrar la respuesta en STDOUT.
Paso 4: Ejecuta una solicitud autorizada
En este paso, modificarás tu muestra de código para que, en lugar de recuperar información sobre el canal de YouTube de GoogleDevelopers, recupere información sobre tu canal de YouTube. Esta solicitud requiere autorización del usuario.
Vuelve a la documentación del método channels.list de la API.
En la sección "Casos de uso comunes", haz clic en el símbolo de código del tercer elemento de la tabla. El caso de uso es llamar al método list para "mi canal".
Nuevamente, en el lado izquierdo del Explorador de APIs en pantalla completa, verás una lista de parámetros seguida de la sección Credenciales. Sin embargo, hay dos cambios con respecto al ejemplo en el que recuperaste información sobre el canal de GoogleDevelopers:
En la sección de parámetros, en lugar de establecer el valor del parámetro id, se debe establecer el valor del parámetro mine en true. Esto indica al servidor de la API que recupere información sobre el canal del usuario autenticado actualmente.
En la sección Credenciales, el menú desplegable debe seleccionar la opción de Google OAuth 2.0.
Además, si haces clic en el vínculo Mostrar permisos, el permiso https://www.googleapis.com/auth/youtube.readonly debería estar marcado.
Al igual que en el ejemplo anterior, selecciona la pestaña Java, copia la muestra de código y guárdala en src/main/java/ApiExample.java.
Ejecuta la muestra desde la línea de comandos. En tu directorio de trabajo, ejecuta lo siguiente:
gradle -q run
La muestra debería intentar abrir una nueva ventana o pestaña en tu navegador predeterminado. Si esto falla, copia la URL de la terminal y ábrela manualmente en tu navegador.
Si aún no accediste a tu Cuenta de Google, se te solicitará que lo hagas. Si accediste a varias Cuentas de Google, se te pedirá que selecciones una para la autorización.
Haz clic en el botón para otorgar a tu aplicación acceso a los permisos especificados en tu muestra de código.
La muestra continuará automáticamente, y puedes cerrar la pestaña del navegador que se usó para el flujo de autorización.
La respuesta de la API se debería volver a imprimir en STDOUT.
[null,null,["Última actualización: 2025-08-21 (UTC)"],[[["\u003cp\u003eThis guide walks through setting up a Java command-line application to interact with the YouTube Data API.\u003c/p\u003e\n"],["\u003cp\u003eYou will learn to make API requests using both an API key for public data and OAuth 2.0 for accessing user-specific data.\u003c/p\u003e\n"],["\u003cp\u003eThe tutorial provides step-by-step instructions for project setup, credential configuration, and sample code execution using Gradle.\u003c/p\u003e\n"],["\u003cp\u003eYou'll use an API key to retrieve public information about the GoogleDevelopers YouTube channel and OAuth 2.0 credentials to access information about your own YouTube channel.\u003c/p\u003e\n"],["\u003cp\u003eThe guide covers how to configure your project, retrieve sample code, replace placeholders with your actual credentials, and execute the Java code to make API calls.\u003c/p\u003e\n"]]],["This guide demonstrates how to create a Java command-line application that interacts with the YouTube Data API. It involves two API requests: one using an API key to retrieve data about the GoogleDevelopers YouTube channel, and another using OAuth 2.0 to get information about the user's own channel. You will need to set up a project and enable the YouTube Data API in the Google API Console, creating both an API key and an OAuth 2.0 client ID. After that you need to prepare the gradle project and run the sample.\n"],null,["# Java Quickstart\n\nThis quickstart guide explains how to set up a simple, Java\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- Java 1.7 or greater.\n- [Gradle 2.3 or greater](http://gradle.org/downloads).\n- Access to the internet and a web browser.\n- A Google account.\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: Prepare the project\n---------------------------\n\nComplete the following steps to prepare your Gradle project:\n\n1. In your working directory, run the following commands to create a new\n project structure:\n\n $ gradle init --type basic\n $ mkdir -p src/main/java src/main/resources\n\n2. Move the JSON file that you downloaded after creating your OAuth 2.0 client\n ID to the `src/main/resources` directory below your working directory, and\n rename the file to `client_secret.json`.\n\n3. Open the `build.gradle` file in your working directory and replace its\n contents with the following:\n\n ```java\n apply plugin: 'java'\n apply plugin: 'application'\n\n mainClassName = 'ApiExample'\n sourceCompatibility = 1.7\n targetCompatibility = 1.7\n version = '1.0'\n\n repositories {\n mavenCentral()\n }\n\n dependencies {\n compile 'com.google.api-client:google-api-client:1.23.0'\n compile 'com.google.oauth-client:google-oauth-client-jetty:1.23.0'\n compile 'com.google.apis:google-api-services-youtube:v3-rev\u003cvar translate=\"no\"\u003eREVISION\u003c/var\u003e-CL_VERSION'\n }\n ```\n4. In the `build.gradle` file, you need to replace the\n \u003cvar translate=\"no\"\u003eREVISION\u003c/var\u003e and \u003cvar translate=\"no\"\u003eCL_VERSION\u003c/var\u003e variables with two values from\n the [client library\n documentation](https://developers.google.com/resources/api-libraries/documentation/youtube/v3/java/latest/)\n for the YouTube Data API. The screenshot below, which shows the\n documentation for the YouTube Analytics API, shows where the two variables\n appear on the page.\n\nStep 3: 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 **Java** tab.\n\n5. Copy the code sample and save it in a file named\n `src/main/java/ApiExample.java`.\n\n Every sample uses the same class name (`ApiExample`) so that you don't\n need to modify the `build.gradle` file to run different samples.\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 `gradle -q run`\n\n\n8. The sample should execute the request and print the response to `STDOUT`.\n\nStep 4: 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 **Java** tab,\n copy the code sample, and save it to `src/main/java/ApiExample.java`.\n\n \u003cbr /\u003e\n\n5. Run the sample from the command line. In your working directory, run:\n\n\n `gradle -q run`\n\n\n6.\n The sample should attempt to open a new window or tab in your default\n browser. If this fails, copy the URL from the terminal and manually open it\n in your browser.\n\n \u003cbr /\u003e\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.\n The sample will proceed automatically, and you may close the browser tab\n used for the auth flow.\n\n \u003cbr /\u003e\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 Java documentation](/api-client-library/java)\n- [YouTube Data API Javadoc documentation](/resources/api-libraries/documentation/youtube/v3/java/latest)\n- [YouTube Data API reference documentation](/youtube/v3/docs)"]]