Servicio YouTube Analytics
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
El servicio de YouTube Analytics te permite usar la API de YouTube Analytics en Google Apps Script. Esta API permite a los usuarios recuperar estadísticas de vistas, métricas de popularidad y datos demográficos de los videos y canales de YouTube.
Para obtener información detallada sobre este servicio, consulta la documentación de referencia de la API de YouTube Analytics. Al igual que todos los servicios avanzados de Apps Script, el servicio de YouTube Analytics usa los mismos objetos, métodos y parámetros que la API pública. Para obtener más información, consulta Cómo se determinan las firmas de métodos.
Código de muestra
En el siguiente código de muestra, se usa la versión 2 de la API de YouTube Analytics, así como la versión 3 de la API de YouTube Data, a la que puedes acceder a través del servicio de YouTube en Apps Script.
Esta función crea una hoja de cálculo que contiene los recuentos de vistas diarias, las métricas de tiempo de reproducción y los recuentos de suscriptores nuevos de los videos de un canal.
/** * Creates a spreadsheet containing daily view counts, watch-time metrics, * and new-subscriber counts for a channel's videos. */functioncreateReport(){// Retrieve info about the user's YouTube channel.constchannels=YouTube.Channels.list("id,contentDetails",{mine:true,});constchannelId=channels.items[0].id;// Retrieve analytics report for the channel.constoneMonthInMillis=1000*60*60*24*30;consttoday=newDate();constlastMonth=newDate(today.getTime()-oneMonthInMillis);constmetrics=["views","estimatedMinutesWatched","averageViewDuration","subscribersGained",];constresult=YouTubeAnalytics.Reports.query({ids:`channel==${channelId}`,startDate:formatDateString(lastMonth),endDate:formatDateString(today),metrics:metrics.join(","),dimensions:"day",sort:"day",});if(!result.rows){console.log("No rows returned.");return;}constspreadsheet=SpreadsheetApp.create("YouTube Analytics Report");constsheet=spreadsheet.getActiveSheet();// Append the headers.constheaders=result.columnHeaders.map((columnHeader)=>{returnformatColumnName(columnHeader.name);});sheet.appendRow(headers);// Append the results.sheet.getRange(2,1,result.rows.length,headers.length).setValues(result.rows);console.log("Report spreadsheet created: %s",spreadsheet.getUrl());}/** * Converts a Date object into a YYYY-MM-DD string. * @param {Date} date The date to convert to a string. * @return {string} The formatted date. */functionformatDateString(date){returnUtilities.formatDate(date,Session.getScriptTimeZone(),"yyyy-MM-dd");}/** * Formats a column name into a more human-friendly name. * @param {string} columnName The unprocessed name of the column. * @return {string} The formatted column name. * @example "averageViewPercentage" becomes "Average View Percentage". */functionformatColumnName(columnName){letname=columnName.replace(/([a-z])([A-Z])/g,"$1 $2");name=name.slice(0,1).toUpperCase()+name.slice(1);returnname;}
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Falta la información que necesito","missingTheInformationINeed","thumb-down"],["Muy complicado o demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Desactualizado","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema con las muestras o los códigos","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2026-05-05 (UTC)"],[],[]]