UNPKG

googleapis

Version:
673 lines (672 loc) 20.4 kB
/** * Copyright 2015 Google Inc. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { AxiosPromise } from 'axios'; import { GoogleApis } from '../..'; import { BodyResponseCallback, GlobalOptions, MethodOptions } from '../../lib/api'; /** * YouTube Reporting API * * Schedules reporting jobs containing your YouTube Analytics data and downloads * the resulting bulk data reports in the form of CSV files. * * @example * const google = require('googleapis'); * const youtubereporting = google.youtubereporting('v1'); * * @namespace youtubereporting * @type {Function} * @version v1 * @variation v1 * @param {object=} options Options for Youtubereporting */ export declare class Youtubereporting { _options: GlobalOptions; google: GoogleApis; root: this; jobs: Resource$Jobs; media: Resource$Media; reportTypes: Resource$Reporttypes; constructor(options: GlobalOptions, google: GoogleApis); getRoot(): this; } /** * 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); } The JSON * representation for `Empty` is empty JSON object `{}`. */ export interface Schema$Empty { } /** * gdata */ export interface Schema$GdataBlobstore2Info { /** * gdata */ blobGeneration: string; /** * gdata */ blobId: string; /** * gdata */ downloadReadHandle: string; /** * gdata */ readToken: string; /** * gdata */ uploadMetadataContainer: string; } /** * gdata */ export interface Schema$GdataCompositeMedia { /** * gdata */ blobRef: string; /** * gdata */ blobstore2Info: Schema$GdataBlobstore2Info; /** * gdata */ cosmoBinaryReference: string; /** * gdata */ crc32cHash: number; /** * gdata */ inline: string; /** * gdata */ length: string; /** * gdata */ md5Hash: string; /** * gdata */ objectId: Schema$GdataObjectId; /** * gdata */ path: string; /** * gdata */ referenceType: string; /** * gdata */ sha1Hash: string; } /** * gdata */ export interface Schema$GdataContentTypeInfo { /** * gdata */ bestGuess: string; /** * gdata */ fromBytes: string; /** * gdata */ fromFileName: string; /** * gdata */ fromHeader: string; /** * gdata */ fromUrlPath: string; } /** * gdata */ export interface Schema$GdataDiffChecksumsResponse { /** * gdata */ checksumsLocation: Schema$GdataCompositeMedia; /** * gdata */ chunkSizeBytes: string; /** * gdata */ objectLocation: Schema$GdataCompositeMedia; /** * gdata */ objectSizeBytes: string; /** * gdata */ objectVersion: string; } /** * gdata */ export interface Schema$GdataDiffDownloadResponse { /** * gdata */ objectLocation: Schema$GdataCompositeMedia; } /** * gdata */ export interface Schema$GdataDiffUploadRequest { /** * gdata */ checksumsInfo: Schema$GdataCompositeMedia; /** * gdata */ objectInfo: Schema$GdataCompositeMedia; /** * gdata */ objectVersion: string; } /** * gdata */ export interface Schema$GdataDiffUploadResponse { /** * gdata */ objectVersion: string; /** * gdata */ originalObject: Schema$GdataCompositeMedia; } /** * gdata */ export interface Schema$GdataDiffVersionResponse { /** * gdata */ objectSizeBytes: string; /** * gdata */ objectVersion: string; } /** * gdata */ export interface Schema$GdataDownloadParameters { /** * gdata */ allowGzipCompression: boolean; /** * gdata */ ignoreRange: boolean; } /** * gdata */ export interface Schema$GdataMedia { /** * gdata */ algorithm: string; /** * gdata */ bigstoreObjectRef: string; /** * gdata */ blobRef: string; /** * gdata */ blobstore2Info: Schema$GdataBlobstore2Info; /** * gdata */ compositeMedia: Schema$GdataCompositeMedia[]; /** * gdata */ contentType: string; /** * gdata */ contentTypeInfo: Schema$GdataContentTypeInfo; /** * gdata */ cosmoBinaryReference: string; /** * gdata */ crc32cHash: number; /** * gdata */ diffChecksumsResponse: Schema$GdataDiffChecksumsResponse; /** * gdata */ diffDownloadResponse: Schema$GdataDiffDownloadResponse; /** * gdata */ diffUploadRequest: Schema$GdataDiffUploadRequest; /** * gdata */ diffUploadResponse: Schema$GdataDiffUploadResponse; /** * gdata */ diffVersionResponse: Schema$GdataDiffVersionResponse; /** * gdata */ downloadParameters: Schema$GdataDownloadParameters; /** * gdata */ filename: string; /** * gdata */ hash: string; /** * gdata */ hashVerified: boolean; /** * gdata */ inline: string; /** * gdata */ isPotentialRetry: boolean; /** * gdata */ length: string; /** * gdata */ md5Hash: string; /** * gdata */ mediaId: string; /** * gdata */ objectId: Schema$GdataObjectId; /** * gdata */ path: string; /** * gdata */ referenceType: string; /** * gdata */ sha1Hash: string; /** * gdata */ sha256Hash: string; /** * gdata */ timestamp: string; /** * gdata */ token: string; } /** * gdata */ export interface Schema$GdataObjectId { /** * gdata */ bucketName: string; /** * gdata */ generation: string; /** * gdata */ objectName: string; } /** * A job creating reports of a specific type. */ export interface Schema$Job { /** * The creation date/time of the job. */ createTime: string; /** * The date/time when this job will expire/expired. After a job expired, no * new reports are generated. */ expireTime: string; /** * The server-generated ID of the job (max. 40 characters). */ id: string; /** * The name of the job (max. 100 characters). */ name: string; /** * The type of reports this job creates. Corresponds to the ID of a * ReportType. */ reportTypeId: string; /** * True if this a system-managed job that cannot be modified by the user; * otherwise false. */ systemManaged: boolean; } /** * Response message for ReportingService.ListJobs. */ export interface Schema$ListJobsResponse { /** * The list of jobs. */ jobs: Schema$Job[]; /** * 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. */ nextPageToken: string; } /** * Response message for ReportingService.ListReports. */ export interface Schema$ListReportsResponse { /** * 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. */ nextPageToken: string; /** * The list of report types. */ reports: Schema$Report[]; } /** * Response message for ReportingService.ListReportTypes. */ export interface Schema$ListReportTypesResponse { /** * 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. */ nextPageToken: string; /** * The list of report types. */ reportTypes: Schema$ReportType[]; } /** * A report&#39;s metadata including the URL from which the report itself can be * downloaded. */ export interface Schema$Report { /** * The date/time when this report was created. */ createTime: string; /** * The URL from which the report can be downloaded (max. 1000 characters). */ downloadUrl: string; /** * The end of the time period that the report instance covers. The value is * exclusive. */ endTime: string; /** * The server-generated ID of the report. */ id: string; /** * The date/time when the job this report belongs to will expire/expired. */ jobExpireTime: string; /** * The ID of the job that created this report. */ jobId: string; /** * The start of the time period that the report instance covers. The value is * inclusive. */ startTime: string; } /** * A report type. */ export interface Schema$ReportType { /** * The date/time when this report type was/will be deprecated. */ deprecateTime: string; /** * The ID of the report type (max. 100 characters). */ id: string; /** * The name of the report type (max. 100 characters). */ name: string; /** * 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. */ systemManaged: boolean; } export declare class Resource$Jobs { root: Youtubereporting; reports: Resource$Jobs$Reports; constructor(root: Youtubereporting); getRoot(): Youtubereporting; /** * youtubereporting.jobs.create * @desc Creates a job and returns it. * @alias youtubereporting.jobs.create * @memberOf! () * * @param {object} params Parameters for request * @param {string=} params.onBehalfOfContentOwner 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). * @param {().Job} params.resource Request body data * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ create(params?: any, options?: MethodOptions): AxiosPromise<Schema$Job>; create(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$Job>, callback?: BodyResponseCallback<Schema$Job>): void; /** * youtubereporting.jobs.delete * @desc Deletes a job. * @alias youtubereporting.jobs.delete * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.jobId The ID of the job to delete. * @param {string=} params.onBehalfOfContentOwner 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). * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ delete(params?: any, options?: MethodOptions): AxiosPromise<Schema$Empty>; delete(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$Empty>, callback?: BodyResponseCallback<Schema$Empty>): void; /** * youtubereporting.jobs.get * @desc Gets a job. * @alias youtubereporting.jobs.get * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.jobId The ID of the job to retrieve. * @param {string=} params.onBehalfOfContentOwner 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). * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ get(params?: any, options?: MethodOptions): AxiosPromise<Schema$Job>; get(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$Job>, callback?: BodyResponseCallback<Schema$Job>): void; /** * youtubereporting.jobs.list * @desc Lists jobs. * @alias youtubereporting.jobs.list * @memberOf! () * * @param {object} params Parameters for request * @param {boolean=} params.includeSystemManaged 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. * @param {string=} params.onBehalfOfContentOwner 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). * @param {integer=} params.pageSize Requested page size. Server may return fewer jobs than requested. If unspecified, server will pick an appropriate default. * @param {string=} params.pageToken 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. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ list(params?: any, options?: MethodOptions): AxiosPromise<Schema$ListJobsResponse>; list(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$ListJobsResponse>, callback?: BodyResponseCallback<Schema$ListJobsResponse>): void; } export declare class Resource$Jobs$Reports { root: Youtubereporting; constructor(root: Youtubereporting); getRoot(): Youtubereporting; /** * youtubereporting.jobs.reports.get * @desc Gets the metadata of a specific report. * @alias youtubereporting.jobs.reports.get * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.jobId The ID of the job. * @param {string=} params.onBehalfOfContentOwner 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). * @param {string} params.reportId The ID of the report to retrieve. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ get(params?: any, options?: MethodOptions): AxiosPromise<Schema$Report>; get(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$Report>, callback?: BodyResponseCallback<Schema$Report>): void; /** * youtubereporting.jobs.reports.list * @desc Lists reports created by a specific job. Returns NOT_FOUND if the job * does not exist. * @alias youtubereporting.jobs.reports.list * @memberOf! () * * @param {object} params Parameters for request * @param {string=} params.createdAfter If set, only reports created after the specified date/time are returned. * @param {string} params.jobId The ID of the job. * @param {string=} params.onBehalfOfContentOwner 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). * @param {integer=} params.pageSize Requested page size. Server may return fewer report types than requested. If unspecified, server will pick an appropriate default. * @param {string=} params.pageToken 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. * @param {string=} params.startTimeAtOrAfter If set, only reports whose start time is greater than or equal the specified date/time are returned. * @param {string=} params.startTimeBefore If set, only reports whose start time is smaller than the specified date/time are returned. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ list(params?: any, options?: MethodOptions): AxiosPromise<Schema$ListReportsResponse>; list(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$ListReportsResponse>, callback?: BodyResponseCallback<Schema$ListReportsResponse>): void; } export declare class Resource$Media { root: Youtubereporting; constructor(root: Youtubereporting); getRoot(): Youtubereporting; /** * youtubereporting.media.download * @desc Method for media download. Download is supported on the URI * `/v1/media/{+name}?alt=media`. * @alias youtubereporting.media.download * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.resourceName Name of the media that is being downloaded. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ download(params?: any, options?: MethodOptions): AxiosPromise<Schema$GdataMedia>; download(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$GdataMedia>, callback?: BodyResponseCallback<Schema$GdataMedia>): void; } export declare class Resource$Reporttypes { root: Youtubereporting; constructor(root: Youtubereporting); getRoot(): Youtubereporting; /** * youtubereporting.reportTypes.list * @desc Lists report types. * @alias youtubereporting.reportTypes.list * @memberOf! () * * @param {object} params Parameters for request * @param {boolean=} params.includeSystemManaged 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. * @param {string=} params.onBehalfOfContentOwner 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). * @param {integer=} params.pageSize Requested page size. Server may return fewer report types than requested. If unspecified, server will pick an appropriate default. * @param {string=} params.pageToken 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. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ list(params?: any, options?: MethodOptions): AxiosPromise<Schema$ListReportTypesResponse>; list(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$ListReportTypesResponse>, callback?: BodyResponseCallback<Schema$ListReportTypesResponse>): void; }