Skip to content

Instantly share code, notes, and snippets.

@aik0aaac
Created June 2, 2023 12:39
Show Gist options
  • Save aik0aaac/54885f8bcc5105ca7c71e56708e52729 to your computer and use it in GitHub Desktop.
Save aik0aaac/54885f8bcc5105ca7c71e56708e52729 to your computer and use it in GitHub Desktop.
Youtube Reporting API > jobs.reports.listのRequest/Response内容。(TypeScript-Interface)
/**
* Youtube Reporting API > `jobs.reports.list`のリクエスト。
* 公式Docs: https://developers.google.com/youtube/reporting/v1/reference/rest/v1/jobs.reports/list?hl=ja
*/
export interface IJobsReportsListRequest {
/**
* 「レポートの作成日が」このタイムスタンプ以降のデータしかレスポンスに含めないようにする。(FROM)
* タイムスタンプ形式で、RFC3339 UTC「Zulu」形式を採用。
* 例: `2015-10-02T15:01:23.045678Z`
*/
createdAfter?: number;
/**
* 「レポート内のデータが」このタイムスタンプ以降のデータしかレスポンスに含めないようにする。(FROM)
* タイムスタンプ形式で、RFC3339 UTC「Zulu」形式を採用。
* 例: `2015-10-02T15:01:23.045678Z`
*/
startTimeAtOrAfter?: number;
/**
* 「レポート内のデータが」このタイムスタンプ以前のデータしかレスポンスに含めないようにする。(TO)
* タイムスタンプ形式で、RFC3339 UTC「Zulu」形式を採用。
* 例: `2015-10-02T15:01:23.045678Z`
*/
startTimeBefore?: number;
/**
* コンテンツ所有者ID。
* 未指定の場合ユーザーに紐づくチャンネルのレポート種別が取得される。
*/
onBehalfOfContentOwner?: string;
/**
* 1回のリクエストで取得できるデータ数を指定できる。
*/
pageSize?: number;
/**
* paging機能を使う場合に使用。
*/
pageToken?: string;
}
/**
* Youtube Reporting API > `jobs.reports.list`のレスポンス。
* 公式Docs: https://developers.google.com/youtube/reporting/v1/reference/rest/v1/jobs.reports/list?hl=ja
*/
export interface IJobsReportsListResponse {
/**
* ジョブの生成結果一覧。
*/
reports: {
/**
* 生成結果(CSVファイル)のダウンロードURL。
* 最大1000文字まで。
* このURLをGETリクエストで取得すればデータを取得可能。
* URL発行時、リクエストヘッダーに`Authorization`としてOAuth認証トークンを指定する。
*/
downloadUrl: string;
/**
* データ生成日。
* タイムスタンプ形式で、RFC3339 UTC「Zulu」形式を採用。
* 例: `2015-10-02T15:01:23.045678Z`
*/
createTime: number;
/**
* 当データの有効期限(FROM)。
* この有効期限以内にしか`downloadUrl`からデータをDLできない。
* タイムスタンプ形式で、RFC3339 UTC「Zulu」形式を採用。
* 例: `2015-10-02T15:01:23.045678Z`
*/
startTime: number;
/**
* 当データの有効期限(TO)。
* タイムスタンプ形式で、RFC3339 UTC「Zulu」形式を採用。
* 例: `2015-10-02T15:01:23.045678Z`
*/
endTime: number;
/**
* このデータを生成したジョブID。
*/
jobId: string;
/**
* ジョブ自体の有効期限。
* この日以降、データは生成されなくなる。
* タイムスタンプ形式で、RFC3339 UTC「Zulu」形式を採用。
* 例: `2015-10-02T15:01:23.045678Z`
*/
jobExpireTime: number;
/**
* ジョブ生成されたデータを一意に識別するのID。
*/
id: string;
}[];
/**
* 次ページへのページングトークン。
*/
nextPageToken: string;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment