Skip to content

Instantly share code, notes, and snippets.

@skoushan
Created April 24, 2017 15:14
Show Gist options
  • Save skoushan/c612a5aae19b42a6778f96ba339c18f9 to your computer and use it in GitHub Desktop.
Save skoushan/c612a5aae19b42a6778f96ba339c18f9 to your computer and use it in GitHub Desktop.
Protobuf representation of BigQuery AuditData
syntax = "proto3";
package google.cloud.bigquery.logging.v1;
option java_package = "com.google.cloud.bigquery.logging.v1";
option java_multiple_files = true;
import "google/protobuf/timestamp.proto";
import "google/protobuf/duration.proto";
import "google/rpc/status.proto";
// Generated from https://cloud.google.com/logging/docs/reference/audit/bigquery/rest/Shared.Types/AuditData
// Issue to track in case they make the proto public https://github.com/googleapis/googleapis/issues/187#issuecomment-292600858
message AuditData {
JobCompletedEvent jobCompletedEvent = 1;
// Union field request can be only one of the following:
TableInsertRequest tableInsertRequest = 2;
TableUpdateRequest tableUpdateRequest = 3;
DatasetListRequest datasetListRequest = 4;
DatasetInsertRequest datasetInsertRequest = 5;
DatasetUpdateRequest datasetUpdateRequest = 6;
JobInsertRequest jobInsertRequest = 7;
JobQueryRequest jobQueryRequest = 8;
JobGetQueryResultsRequest jobGetQueryResultsRequest = 9;
TableDataListRequest tableDataListRequest = 10;
// End of list of possible types for union field request.
// Union field response can be only one of the following:
TableInsertResponse tableInsertResponse = 11;
TableUpdateResponse tableUpdateResponse = 12;
DatasetInsertResponse datasetInsertResponse = 13;
DatasetUpdateResponse datasetUpdateResponse = 14;
JobQueryResponse jobQueryResponse = 15;
JobGetQueryResultsResponse jobGetQueryResultsResponse = 16;
JobQueryDoneResponse jobQueryDoneResponse = 17;
// End of list of possible types for union field response.
}
message TableInsertRequest {
Table resource = 1;
}
message Table {
TableName tableName = 1;
TableInfo info = 2;
string schemaJson = 3;
TableViewDefinition view = 4;
google.protobuf.Timestamp expireTime = 5;
google.protobuf.Timestamp createTime = 6;
google.protobuf.Timestamp truncateTime = 7;
}
message TableName {
string projectId = 1;
string datasetId = 2;
string tableId = 3;
}
message TableInfo {
string friendlyName = 1;
string description = 2;
}
message TableViewDefinition {
string query = 1;
}
message TableUpdateRequest {
Table resource = 1;
}
message DatasetListRequest {
bool listAll = 1;
}
message DatasetInsertRequest {
Dataset resource = 1;
}
message Dataset {
DatasetName datasetName = 1;
DatasetInfo info = 2;
google.protobuf.Timestamp createTime = 3;
google.protobuf.Timestamp updateTime = 4;
BigQueryAcl acl = 5;
google.protobuf.Duration defaultTableExpireDuration = 6;
}
message DatasetName {
string projectId = 1;
string datasetId = 2;
}
message DatasetInfo {
string friendlyName = 1;
string description = 2;
}
message BigQueryAcl {
repeated Entry entries = 1;
}
message Entry {
string role = 1;
string groupEmail = 2;
string userEmail = 3;
string domain = 4;
string specialGroup = 5;
TableName viewName = 6;
}
message DatasetUpdateRequest {
Dataset resource = 1;
}
message JobInsertRequest {
Job resource = 1;
}
message Job {
JobName jobName = 1;
JobConfiguration jobConfiguration = 2;
JobStatus jobStatus = 3;
JobStatistics jobStatistics = 4;
}
message JobName {
string projectId = 1;
string jobId = 2;
}
message JobConfiguration {
bool dryRun = 1;
// Union field configuration can be only one of the following:
Query query = 2;
Load load = 3;
Extract extract = 4;
TableCopy tableCopy = 5;
// End of list of possible types for union field configuration.
}
message Query {
string query = 1;
TableName destinationTable = 2;
string createDisposition = 3;
string writeDisposition = 4;
DatasetName defaultDataset = 5;
repeated TableDefinition tableDefinitions = 6;
}
message TableDefinition {
string name = 1;
repeated string sourceUris = 2;
}
message Load {
repeated string sourceUris = 1;
string schemaJson = 2;
TableName destinationTable = 3;
string createDisposition = 4;
string writeDisposition = 5;
}
message Extract {
repeated string destinationUris = 1;
TableName sourceTable = 2;
}
message TableCopy {
repeated TableName sourceTables = 1;
TableName destinationTable = 2;
string createDisposition = 3;
string writeDisposition = 4;
}
message JobStatus {
string state = 1;
google.rpc.Status error = 2;
}
message JobStatistics {
google.protobuf.Timestamp createTime = 1;
google.protobuf.Timestamp startTime = 2;
google.protobuf.Timestamp endTime = 3;
int64 totalProcessedBytes = 4;
int64 totalBilledBytes = 5;
int32 billingTier = 6;
}
message JobQueryRequest {
string query = 1;
uint32 maxResults = 2;
DatasetName defaultDataset = 3;
string projectId = 4;
bool dryRun = 5;
}
message JobGetQueryResultsRequest {
uint32 maxResults = 1;
string startRow = 2;
}
message TableDataListRequest {
string startRow = 1;
uint32 maxResults = 2;
}
message TableInsertResponse {
Table resource = 1;
}
message TableUpdateResponse {
Table resource = 1;
}
message DatasetInsertResponse {
Dataset resource = 1;
}
message DatasetUpdateResponse {
Dataset resource = 1;
}
message JobQueryResponse {
string totalResults = 1;
Job job = 2;
}
message JobGetQueryResultsResponse {
string totalResults = 1;
Job job = 2;
}
message JobQueryDoneResponse {
Job job = 1;
}
message JobCompletedEvent {
string eventName = 1;
Job job = 2;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment