YouTube Reporting API
Schedules reporting jobs containing your YouTube Analytics data and downloads the resulting bulk data reports in the form of CSV files
COMMUNITYBEARER0 INSTALLS
OpenAPI Specificationv3.0
{
"openapi": "3.0.0",
"servers": [
{
"url": "https://youtubereporting.googleapis.com/"
}
],
"info": {
"contact": {
"name": "Google",
"url": "https://google.com",
"x-twitter": "youtube"
},
"description": "Schedules reporting jobs containing your YouTube Analytics data and downloads the resulting bulk data reports in the form of CSV files.",
"license": {
"name": "Creative Commons Attribution 3.0",
"url": "http://creativecommons.org/licenses/by/3.0/"
},
"termsOfService": "https://developers.google.com/terms/",
"title": "YouTube Reporting API",
"version": "v1",
"x-apiClientRegistration": {
"url": "https://console.developers.google.com"
},
"x-apisguru-categories": [
"analytics",
"media"
],
"x-logo": {
"url": "https://api.apis.guru/v2/cache/logo/https_www.google.com_images_branding_googlelogo_2x_googlelogo_color_272x92dp.png"
},
"x-origin": [
{
"converter": {
"url": "https://github.com/mermade/oas-kit",
"version": "7.0.4"
},
"format": "google",
"url": "https://youtubereporting.googleapis.com/$discovery/rest?version=v1",
"version": "v1"
}
],
"x-providerName": "googleapis.com",
"x-serviceName": "youtubereporting"
},
"externalDocs": {
"url": "https://developers.google.com/youtube/reporting/v1/reports/"
},
"tags": [
{
"name": "jobs"
},
{
"name": "media"
},
{
"name": "reportTypes"
}
],
"paths": {
"/v1/jobs": {
"get": {
"description": "Lists jobs.",
"operationId": "youtubereporting.jobs.list",
"parameters": [
{
"description": "If set to true, also system-managed jobs will be returned; otherwise only user-created jobs will be returned. System-managed jobs can neither be modified nor deleted.",
"in": "query",
"name": "includeSystemManaged",
"schema": {
"type": "boolean"
}
},
{
"description": "The content owner's external ID on which behalf the user is acting on. If not set, the user is acting for himself (his own channel).",
"in": "query",
"name": "onBehalfOfContentOwner",
"schema": {
"type": "string"
}
},
{
"description": "Requested page size. Server may return fewer jobs than requested. If unspecified, server will pick an appropriate default.",
"in": "query",
"name": "pageSize",
"schema": {
"type": "integer"
}
},
{
"description": "A token identifying a page of results the server should return. Typically, this is the value of ListReportTypesResponse.next_page_token returned in response to the previous call to the `ListJobs` method.",
"in": "query",
"name": "pageToken",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ListJobsResponse"
}
}
},
"description": "Successful response"
}
},
"security": [
{
"Oauth2": [
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly"
],
"Oauth2c": [
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly"
]
},
{
"Oauth2": [
"https://www.googleapis.com/auth/yt-analytics.readonly"
],
"Oauth2c": [
"https://www.googleapis.com/auth/yt-analytics.readonly"
]
}
],
"tags": [
"jobs"
]
},
"parameters": [
{
"$ref": "#/components/parameters/_.xgafv"
},
{
"$ref": "#/components/parameters/access_token"
},
{
"$ref": "#/components/parameters/alt"
},
{
"$ref": "#/components/parameters/callback"
},
{
"$ref": "#/components/parameters/fields"
},
{
"$ref": "#/components/parameters/key"
},
{
"$ref": "#/components/parameters/oauth_token"
},
{
"$ref": "#/components/parameters/prettyPrint"
},
{
"$ref": "#/components/parameters/quotaUser"
},
{
"$ref": "#/components/parameters/upload_protocol"
},
{
"$ref": "#/components/parameters/uploadType"
}
],
"post": {
"description": "Creates a job and returns it.",
"operationId": "youtubereporting.jobs.create",
"parameters": [
{
"description": "The content owner's external ID on which behalf the user is acting on. If not set, the user is acting for himself (his own channel).",
"in": "query",
"name": "onBehalfOfContentOwner",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Job"
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Job"
}
}
},
"description": "Successful response"
}
},
"security": [
{
"Oauth2": [
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly"
],
"Oauth2c": [
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly"
]
},
{
"Oauth2": [
"https://www.googleapis.com/auth/yt-analytics.readonly"
],
"Oauth2c": [
"https://www.googleapis.com/auth/yt-analytics.readonly"
]
}
],
"tags": [
"jobs"
]
}
},
"/v1/jobs/{jobId}": {
"delete": {
"description": "Deletes a job.",
"operationId": "youtubereporting.jobs.delete",
"parameters": [
{
"description": "The ID of the job to delete.",
"in": "path",
"name": "jobId",
"required": true,
"schema": {
"type": "string"
}
},
{
"description": "The content owner's external ID on which behalf the user is acting on. If not set, the user is acting for himself (his own channel).",
"in": "query",
"name": "onBehalfOfContentOwner",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Empty"
}
}
},
"description": "Successful response"
}
},
"security": [
{
"Oauth2": [
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly"
],
"Oauth2c": [
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly"
]
},
{
"Oauth2": [
"https://www.googleapis.com/auth/yt-analytics.readonly"
],
"Oauth2c": [
"https://www.googleapis.com/auth/yt-analytics.readonly"
]
}
],
"tags": [
"jobs"
]
},
"get": {
"description": "Gets a job.",
"operationId": "youtubereporting.jobs.get",
"parameters": [
{
"description": "The ID of the job to retrieve.",
"in": "path",
"name": "jobId",
"required": true,
"schema": {
"type": "string"
}
},
{
"description": "The content owner's external ID on which behalf the user is acting on. If not set, the user is acting for himself (his own channel).",
"in": "query",
"name": "onBehalfOfContentOwner",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Job"
}
}
},
"description": "Successful response"
}
},
"security": [
{
"Oauth2": [
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly"
],
"Oauth2c": [
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly"
]
},
{
"Oauth2": [
"https://www.googleapis.com/auth/yt-analytics.readonly"
],
"Oauth2c": [
"https://www.googleapis.com/auth/yt-analytics.readonly"
]
}
],
"tags": [
"jobs"
]
},
"parameters": [
{
"$ref": "#/components/parameters/_.xgafv"
},
{
"$ref": "#/components/parameters/access_token"
},
{
"$ref": "#/components/parameters/alt"
},
{
"$ref": "#/components/parameters/callback"
},
{
"$ref": "#/components/parameters/fields"
},
{
"$ref": "#/components/parameters/key"
},
{
"$ref": "#/components/parameters/oauth_token"
},
{
"$ref": "#/components/parameters/prettyPrint"
},
{
"$ref": "#/components/parameters/quotaUser"
},
{
"$ref": "#/components/parameters/upload_protocol"
},
{
"$ref": "#/components/parameters/uploadType"
}
]
},
"/v1/jobs/{jobId}/reports": {
"get": {
"description": "Lists reports created by a specific job. Returns NOT_FOUND if the job does not exist.",
"operationId": "youtubereporting.jobs.reports.list",
"parameters": [
{
"description": "The ID of the job.",
"in": "path",
"name": "jobId",
"required": true,
"schema": {
"type": "string"
}
},
{
"description": "If set, only reports created after the specified date/time are returned.",
"in": "query",
"name": "createdAfter",
"schema": {
"type": "string"
}
},
{
"description": "The content owner's external ID on which behalf the user is acting on. If not set, the user is acting for himself (his own channel).",
"in": "query",
"name": "onBehalfOfContentOwner",
"schema": {
"type": "string"
}
},
{
"description": "Requested page size. Server may return fewer report types than requested. If unspecified, server will pick an appropriate default.",
"in": "query",
"name": "pageSize",
"schema": {
"type": "integer"
}
},
{
"description": "A token identifying a page of results the server should return. Typically, this is the value of ListReportsResponse.next_page_token returned in response to the previous call to the `ListReports` method.",
"in": "query",
"name": "pageToken",
"schema": {
"type": "string"
}
},
{
"description": "If set, only reports whose start time is greater than or equal the specified date/time are returned.",
"in": "query",
"name": "startTimeAtOrAfter",
"schema": {
"type": "string"
}
},
{
"description": "If set, only reports whose start time is smaller than the specified date/time are returned.",
"in": "query",
"name": "startTimeBefore",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ListReportsResponse"
}
}
},
"description": "Successful response"
}
},
"security": [
{
"Oauth2": [
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly"
],
"Oauth2c": [
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly"
]
},
{
"Oauth2": [
"https://www.googleapis.com/auth/yt-analytics.readonly"
],
"Oauth2c": [
"https://www.googleapis.com/auth/yt-analytics.readonly"
]
}
],
"tags": [
"jobs"
]
},
"parameters": [
{
"$ref": "#/components/parameters/_.xgafv"
},
{
"$ref": "#/components/parameters/access_token"
},
{
"$ref": "#/components/parameters/alt"
},
{
"$ref": "#/components/parameters/callback"
},
{
"$ref": "#/components/parameters/fields"
},
{
"$ref": "#/components/parameters/key"
},
{
"$ref": "#/components/parameters/oauth_token"
},
{
"$ref": "#/components/parameters/prettyPrint"
},
{
"$ref": "#/components/parameters/quotaUser"
},
{
"$ref": "#/components/parameters/upload_protocol"
},
{
"$ref": "#/components/parameters/uploadType"
}
]
},
"/v1/jobs/{jobId}/reports/{reportId}": {
"get": {
"description": "Gets the metadata of a specific report.",
"operationId": "youtubereporting.jobs.reports.get",
"parameters": [
{
"description": "The ID of the job.",
"in": "path",
"name": "jobId",
"required": true,
"schema": {
"type": "string"
}
},
{
"description": "The ID of the report to retrieve.",
"in": "path",
"name": "reportId",
"required": true,
"schema": {
"type": "string"
}
},
{
"description": "The content owner's external ID on which behalf the user is acting on. If not set, the user is acting for himself (his own channel).",
"in": "query",
"name": "onBehalfOfContentOwner",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Report"
}
}
},
"description": "Successful response"
}
},
"security": [
{
"Oauth2": [
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly"
],
"Oauth2c": [
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly"
]
},
{
"Oauth2": [
"https://www.googleapis.com/auth/yt-analytics.readonly"
],
"Oauth2c": [
"https://www.googleapis.com/auth/yt-analytics.readonly"
]
}
],
"tags": [
"jobs"
]
},
"parameters": [
{
"$ref": "#/components/parameters/_.xgafv"
},
{
"$ref": "#/components/parameters/access_token"
},
{
"$ref": "#/components/parameters/alt"
},
{
"$ref": "#/components/parameters/callback"
},
{
"$ref": "#/components/parameters/fields"
},
{
"$ref": "#/components/parameters/key"
},
{
"$ref": "#/components/parameters/oauth_token"
},
{
"$ref": "#/components/parameters/prettyPrint"
},
{
"$ref": "#/components/parameters/quotaUser"
},
{
"$ref": "#/components/parameters/upload_protocol"
},
{
"$ref": "#/components/parameters/uploadType"
}
]
},
"/v1/media/{resourceName}": {
"get": {
"description": "Method for media download. Download is supported on the URI `/v1/media/{+name}?alt=media`.",
"operationId": "youtubereporting.media.download",
"parameters": [
{
"description": "Name of the media that is being downloaded.",
"in": "path",
"name": "resourceName",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GdataMedia"
}
}
},
"description": "Successful response"
}
},
"security": [
{
"Oauth2": [
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly"
],
"Oauth2c": [
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly"
]
},
{
"Oauth2": [
"https://www.googleapis.com/auth/yt-analytics.readonly"
],
"Oauth2c": [
"https://www.googleapis.com/auth/yt-analytics.readonly"
]
}
],
"tags": [
"media"
]
},
"parameters": [
{
"$ref": "#/components/parameters/_.xgafv"
},
{
"$ref": "#/components/parameters/access_token"
},
{
"$ref": "#/components/parameters/alt"
},
{
"$ref": "#/components/parameters/callback"
},
{
"$ref": "#/components/parameters/fields"
},
{
"$ref": "#/components/parameters/key"
},
{
"$ref": "#/components/parameters/oauth_token"
},
{
"$ref": "#/components/parameters/prettyPrint"
},
{
"$ref": "#/components/parameters/quotaUser"
},
{
"$ref": "#/components/parameters/upload_protocol"
},
{
"$ref": "#/components/parameters/uploadType"
}
]
},
"/v1/reportTypes": {
"get": {
"description": "Lists report types.",
"operationId": "youtubereporting.reportTypes.list",
"parameters": [
{
"description": "If set to true, also system-managed report types will be returned; otherwise only the report types that can be used to create new reporting jobs will be returned.",
"in": "query",
"name": "includeSystemManaged",
"schema": {
"type": "boolean"
}
},
{
"description": "The content owner's external ID on which behalf the user is acting on. If not set, the user is acting for himself (his own channel).",
"in": "query",
"name": "onBehalfOfContentOwner",
"schema": {
"type": "string"
}
},
{
"description": "Requested page size. Server may return fewer report types than requested. If unspecified, server will pick an appropriate default.",
"in": "query",
"name": "pageSize",
"schema": {
"type": "integer"
}
},
{
"description": "A token identifying a page of results the server should return. Typically, this is the value of ListReportTypesResponse.next_page_token returned in response to the previous call to the `ListReportTypes` method.",
"in": "query",
"name": "pageToken",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ListReportTypesResponse"
}
}
},
"description": "Successful response"
}
},
"security": [
{
"Oauth2": [
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly"
],
"Oauth2c": [
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly"
]
},
{
"Oauth2": [
"https://www.googleapis.com/auth/yt-analytics.readonly"
],
"Oauth2c": [
"https://www.googleapis.com/auth/yt-analytics.readonly"
]
}
],
"tags": [
"reportTypes"
]
},
"parameters": [
{
"$ref": "#/components/parameters/_.xgafv"
},
{
"$ref": "#/components/parameters/access_token"
},
{
"$ref": "#/components/parameters/alt"
},
{
"$ref": "#/components/parameters/callback"
},
{
"$ref": "#/components/parameters/fields"
},
{
"$ref": "#/components/parameters/key"
},
{
"$ref": "#/components/parameters/oauth_token"
},
{
"$ref": "#/components/parameters/prettyPrint"
},
{
"$ref": "#/components/parameters/quotaUser"
},
{
"$ref": "#/components/parameters/upload_protocol"
},
{
"$ref": "#/components/parameters/uploadType"
}
]
}
},
"components": {
"parameters": {
"_.xgafv": {
"description": "V1 error format.",
"in": "query",
"name": "$.xgafv",
"schema": {
"enum": [
"1",
"2"
],
"type": "string"
}
},
"access_token": {
"description": "OAuth access token.",
"in": "query",
"name": "access_token",
"schema": {
"type": "string"
}
},
"alt": {
"description": "Data format for response.",
"in": "query",
"name": "alt",
"schema": {
"enum": [
"json",
"media",
"proto"
],
"type": "string"
}
},
"callback": {
"description": "JSONP",
"in": "query",
"name": "callback",
"schema": {
"type": "string"
}
},
"fields": {
"description": "Selector specifying which fields to include in a partial response.",
"in": "query",
"name": "fields",
"schema": {
"type": "string"
}
},
"key": {
"description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
"in": "query",
"name": "key",
"schema": {
"type": "string"
}
},
"oauth_token": {
"description": "OAuth 2.0 token for the current user.",
"in": "query",
"name": "oauth_token",
"schema": {
"type": "string"
}
},
"prettyPrint": {
"description": "Returns response with indentations and line breaks.",
"in": "query",
"name": "prettyPrint",
"schema": {
"type": "boolean"
}
},
"quotaUser": {
"description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
"in": "query",
"name": "quotaUser",
"schema": {
"type": "string"
}
},
"uploadType": {
"description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
"in": "query",
"name": "uploadType",
"schema": {
"type": "string"
}
},
"upload_protocol": {
"description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
"in": "query",
"name": "upload_protocol",
"schema": {
"type": "string"
}
}
},
"schemas": {
"Empty": {
"description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }",
"properties": {},
"type": "object"
},
"GdataBlobstore2Info": {
"description": "gdata",
"properties": {
"blobGeneration": {
"description": "gdata",
"format": "int64",
"type": "string"
},
"blobId": {
"description": "gdata",
"type": "string"
},
"downloadReadHandle": {
"description": "gdata",
"format": "byte",
"type": "string"
},
"readToken": {
"description": "gdata",
"type": "string"
},
"uploadMetadataContainer": {
"description": "gdata",
"format": "byte",
"type": "string"
}
},
"type": "object"
},
"GdataCompositeMedia": {
"description": "gdata",
"properties": {
"blobRef": {
"description": "gdata",
"format": "byte",
"type": "string"
},
"blobstore2Info": {
"$ref": "#/components/schemas/GdataBlobstore2Info",
"description": "gdata"
},
"cosmoBinaryReference": {
"description": "gdata",
"format": "byte",
"type": "string"
},
"crc32cHash": {
"description": "gdata",
"format": "uint32",
"type": "integer"
},
"inline": {
"description": "gdata",
"format": "byte",
"type": "string"
},
"length": {
"description": "gdata",
"format": "int64",
"type": "string"
},
"md5Hash": {
"description": "gdata",
"format": "byte",
"type": "string"
},
"objectId": {
"$ref": "#/components/schemas/GdataObjectId",
"description": "gdata"
},
"path": {
"description": "gdata",
"type": "string"
},
"referenceType": {
"description": "gdata",
"enum": [
"PATH",
"BLOB_REF",
"INLINE",
"BIGSTORE_REF",
"COSMO_BINARY_REFERENCE"
],
"type": "string"
},
"sha1Hash": {
"description": "gdata",
"format": "byte",
"type": "string"
}
},
"type": "object"
},
"GdataContentTypeInfo": {
"description": "gdata",
"properties": {
"bestGuess": {
"description": "gdata",
"type": "string"
},
"fromBytes": {
"description": "gdata",
"type": "string"
},
"fromFileName": {
"description": "gdata",
"type": "string"
},
"fromHeader": {
"description": "gdata",
"type": "string"
},
"fromUrlPath": {
"description": "gdata",
"type": "string"
}
},
"type": "object"
},
"GdataDiffChecksumsResponse": {
"description": "gdata",
"properties": {
"checksumsLocation": {
"$ref": "#/components/schemas/GdataCompositeMedia",
"description": "gdata"
},
"chunkSizeBytes": {
"description": "gdata",
"format": "int64",
"type": "string"
},
"objectLocation": {
"$ref": "#/components/schemas/GdataCompositeMedia",
"description": "gdata"
},
"objectSizeBytes": {
"description": "gdata",
"format": "int64",
"type": "string"
},
"objectVersion": {
"description": "gdata",
"type": "string"
}
},
"type": "object"
},
"GdataDiffDownloadResponse": {
"description": "gdata",
"properties": {
"objectLocation": {
"$ref": "#/components/schemas/GdataCompositeMedia",
"description": "gdata"
}
},
"type": "object"
},
"GdataDiffUploadRequest": {
"description": "gdata",
"properties": {
"checksumsInfo": {
"$ref": "#/components/schemas/GdataCompositeMedia",
"description": "gdata"
},
"objectInfo": {
"$ref": "#/components/schemas/GdataCompositeMedia",
"description": "gdata"
},
"objectVersion": {
"description": "gdata",
"type": "string"
}
},
"type": "object"
},
"GdataDiffUploadResponse": {
"description": "gdata",
"properties": {
"objectVersion": {
"description": "gdata",
"type": "string"
},
"originalObject": {
"$ref": "#/components/schemas/GdataCompositeMedia",
"description": "gdata"
}
},
"type": "object"
},
"GdataDiffVersionResponse": {
"description": "gdata",
"properties": {
"objectSizeBytes": {
"description": "gdata",
"format": "int64",
"type": "string"
},
"objectVersion": {
"description": "gdata",
"type": "string"
}
},
"type": "object"
},
"GdataDownloadParameters": {
"description": "gdata",
"properties": {
"allowGzipCompression": {
"description": "gdata",
"type": "boolean"
},
"ignoreRange": {
"description": "gdata",
"type": "boolean"
}
},
"type": "object"
},
"GdataMedia": {
"description": "gdata",
"properties": {
"algorithm": {
"description": "gdata",
"type": "string"
},
"bigstoreObjectRef": {
"description": "gdata",
"format": "byte",
"type": "string"
},
"blobRef": {
"description": "gdata",
"format": "byte",
"type": "string"
},
"blobstore2Info": {
"$ref": "#/components/schemas/GdataBlobstore2Info",
"description": "gdata"
},
"compositeMedia": {
"description": "gdata",
"items": {
"$ref": "#/components/schemas/GdataCompositeMedia"
},
"type": "array"
},
"contentType": {
"description": "gdata",
"type": "string"
},
"contentTypeInfo": {
"$ref": "#/components/schemas/GdataContentTypeInfo",
"description": "gdata"
},
"cosmoBinaryReference": {
"description": "gdata",
"format": "byte",
"type": "string"
},
"crc32cHash": {
"description": "gdata",
"format": "uint32",
"type": "integer"
},
"diffChecksumsResponse": {
"$ref": "#/components/schemas/GdataDiffChecksumsResponse",
"description": "gdata"
},
"diffDownloadResponse": {
"$ref": "#/components/schemas/GdataDiffDownloadResponse",
"description": "gdata"
},
"diffUploadRequest": {
"$ref": "#/components/schemas/GdataDiffUploadRequest",
"description": "gdata"
},
"diffUploadResponse": {
"$ref": "#/components/schemas/GdataDiffUploadResponse",
"description": "gdata"
},
"diffVersionResponse": {
"$ref": "#/components/schemas/GdataDiffVersionResponse",
"description": "gdata"
},
"downloadParameters": {
"$ref": "#/components/schemas/GdataDownloadParameters",
"description": "gdata"
},
"filename": {
"description": "gdata",
"type": "string"
},
"hash": {
"description": "gdata",
"type": "string"
},
"hashVerified": {
"description": "gdata",
"type": "boolean"
},
"inline": {
"description": "gdata",
"format": "byte",
"type": "string"
},
"isPotentialRetry": {
"description": "gdata",
"type": "boolean"
},
"length": {
"description": "gdata",
"format": "int64",
"type": "string"
},
"md5Hash": {
"description": "gdata",
"format": "byte",
"type": "string"
},
"mediaId": {
"description": "gdata",
"format": "byte",
"type": "string"
},
"objectId": {
"$ref": "#/components/schemas/GdataObjectId",
"description": "gdata"
},
"path": {
"description": "gdata",
"type": "string"
},
"referenceType": {
"description": "gdata",
"enum": [
"PATH",
"BLOB_REF",
"INLINE",
"GET_MEDIA",
"COMPOSITE_MEDIA",
"BIGSTORE_REF",
"DIFF_VERSION_RESPONSE",
"DIFF_CHECKSUMS_RESPONSE",
"DIFF_DOWNLOAD_RESPONSE",
"DIFF_UPLOAD_REQUEST",
"DIFF_UPLOAD_RESPONSE",
"COSMO_BINARY_REFERENCE",
"ARBITRARY_BYTES"
],
"type": "string"
},
"sha1Hash": {
"description": "gdata",
"format": "byte",
"type": "string"
},
"sha256Hash": {
"description": "gdata",
"format": "byte",
"type": "string"
},
"timestamp": {
"description": "gdata",
"format": "uint64",
"type": "string"
},
"token": {
"description": "gdata",
"type": "string"
}
},
"type": "object"
},
"GdataObjectId": {
"description": "gdata",
"properties": {
"bucketName": {
"description": "gdata",
"type": "string"
},
"generation": {
"description": "gdata",
"format": "int64",
"type": "string"
},
"objectName": {
"description": "gdata",
"type": "string"
}
},
"type": "object"
},
"Job": {
"description": "A job creating reports of a specific type.",
"properties": {
"createTime": {
"description": "The creation date/time of the job.",
"format": "google-datetime",
"type": "string"
},
"expireTime": {
"description": "The date/time when this job will expire/expired. After a job expired, no new reports are generated.",
"format": "google-datetime",
"type": "string"
},
"id": {
"description": "The server-generated ID of the job (max. 40 characters).",
"type": "string"
},
"name": {
"description": "The name of the job (max. 100 characters).",
"type": "string"
},
"reportTypeId": {
"description": "The type of reports this job creates. Corresponds to the ID of a ReportType.",
"type": "string"
},
"systemManaged": {
"description": "True if this a system-managed job that cannot be modified by the user; otherwise false.",
"type": "boolean"
}
},
"type": "object"
},
"ListJobsResponse": {
"description": "Response message for ReportingService.ListJobs.",
"properties": {
"jobs": {
"description": "The list of jobs.",
"items": {
"$ref": "#/components/schemas/Job"
},
"type": "array"
},
"nextPageToken": {
"description": "A token to retrieve next page of results. Pass this value in the ListJobsRequest.page_token field in the subsequent call to `ListJobs` method to retrieve the next page of results.",
"type": "string"
}
},
"type": "object"
},
"ListReportTypesResponse": {
"description": "Response message for ReportingService.ListReportTypes.",
"properties": {
"nextPageToken": {
"description": "A token to retrieve next page of results. Pass this value in the ListReportTypesRequest.page_token field in the subsequent call to `ListReportTypes` method to retrieve the next page of results.",
"type": "string"
},
"reportTypes": {
"description": "The list of report types.",
"items": {
"$ref": "#/components/schemas/ReportType"
},
"type": "array"
}
},
"type": "object"
},
"ListReportsResponse": {
"description": "Response message for ReportingService.ListReports.",
"properties": {
"nextPageToken": {
"description": "A token to retrieve next page of results. Pass this value in the ListReportsRequest.page_token field in the subsequent call to `ListReports` method to retrieve the next page of results.",
"type": "string"
},
"reports": {
"description": "The list of report types.",
"items": {
"$ref": "#/components/schemas/Report"
},
"type": "array"
}
},
"type": "object"
},
"Report": {
"description": "A report's metadata including the URL from which the report itself can be downloaded.",
"properties": {
"createTime": {
"description": "The date/time when this report was created.",
"format": "google-datetime",
"type": "string"
},
"downloadUrl": {
"description": "The URL from which the report can be downloaded (max. 1000 characters).",
"type": "string"
},
"endTime": {
"description": "The end of the time period that the report instance covers. The value is exclusive.",
"format": "google-datetime",
"type": "string"
},
"id": {
"description": "The server-generated ID of the report.",
"type": "string"
},
"jobExpireTime": {
"description": "The date/time when the job this report belongs to will expire/expired.",
"format": "google-datetime",
"type": "string"
},
"jobId": {
"description": "The ID of the job that created this report.",
"type": "string"
},
"startTime": {
"description": "The start of the time period that the report instance covers. The value is inclusive.",
"format": "google-datetime",
"type": "string"
}
},
"type": "object"
},
"ReportType": {
"description": "A report type.",
"properties": {
"deprecateTime": {
"description": "The date/time when this report type was/will be deprecated.",
"format": "google-datetime",
"type": "string"
},
"id": {
"description": "The ID of the report type (max. 100 characters).",
"type": "string"
},
"name": {
"description": "The name of the report type (max. 100 characters).",
"type": "string"
},
"systemManaged": {
"description": "True if this a system-managed report type; otherwise false. Reporting jobs for system-managed report types are created automatically and can thus not be used in the `CreateJob` method.",
"type": "boolean"
}
},
"type": "object"
}
},
"securitySchemes": {
"Oauth2": {
"description": "Oauth 2.0 implicit authentication",
"flows": {
"implicit": {
"authorizationUrl": "https://accounts.google.com/o/oauth2/auth",
"scopes": {
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly": "View monetary and non-monetary YouTube Analytics reports for your YouTube content",
"https://www.googleapis.com/auth/yt-analytics.readonly": "View YouTube Analytics reports for your YouTube content"
}
}
},
"type": "oauth2"
},
"Oauth2c": {
"description": "Oauth 2.0 authorizationCode authentication",
"flows": {
"authorizationCode": {
"authorizationUrl": "https://accounts.google.com/o/oauth2/auth",
"scopes": {
"https://www.googleapis.com/auth/yt-analytics-monetary.readonly": "View monetary and non-monetary YouTube Analytics reports for your YouTube content",
"https://www.googleapis.com/auth/yt-analytics.readonly": "View YouTube Analytics reports for your YouTube content"
},
"tokenUrl": "https://accounts.google.com/o/oauth2/token"
}
},
"type": "oauth2"
}
}
}
}