1*d5c09012SAndroid Build Coastguard Worker// Copyright 2023 Google LLC 2*d5c09012SAndroid Build Coastguard Worker// 3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*d5c09012SAndroid Build Coastguard Worker// 7*d5c09012SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*d5c09012SAndroid Build Coastguard Worker// 9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*d5c09012SAndroid Build Coastguard Worker// limitations under the License. 14*d5c09012SAndroid Build Coastguard Worker 15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3"; 16*d5c09012SAndroid Build Coastguard Worker 17*d5c09012SAndroid Build Coastguard Workerpackage google.api; 18*d5c09012SAndroid Build Coastguard Worker 19*d5c09012SAndroid Build Coastguard Workeroption go_package = "google.golang.org/genproto/googleapis/api/error_reason;error_reason"; 20*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true; 21*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "ErrorReasonProto"; 22*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.api"; 23*d5c09012SAndroid Build Coastguard Workeroption objc_class_prefix = "GAPI"; 24*d5c09012SAndroid Build Coastguard Worker 25*d5c09012SAndroid Build Coastguard Worker// Defines the supported values for `google.rpc.ErrorInfo.reason` for the 26*d5c09012SAndroid Build Coastguard Worker// `googleapis.com` error domain. This error domain is reserved for [Service 27*d5c09012SAndroid Build Coastguard Worker// Infrastructure](https://cloud.google.com/service-infrastructure/docs/overview). 28*d5c09012SAndroid Build Coastguard Worker// For each error info of this domain, the metadata key "service" refers to the 29*d5c09012SAndroid Build Coastguard Worker// logical identifier of an API service, such as "pubsub.googleapis.com". The 30*d5c09012SAndroid Build Coastguard Worker// "consumer" refers to the entity that consumes an API Service. It typically is 31*d5c09012SAndroid Build Coastguard Worker// a Google project that owns the client application or the server resource, 32*d5c09012SAndroid Build Coastguard Worker// such as "projects/123". Other metadata keys are specific to each error 33*d5c09012SAndroid Build Coastguard Worker// reason. For more information, see the definition of the specific error 34*d5c09012SAndroid Build Coastguard Worker// reason. 35*d5c09012SAndroid Build Coastguard Workerenum ErrorReason { 36*d5c09012SAndroid Build Coastguard Worker // Do not use this default value. 37*d5c09012SAndroid Build Coastguard Worker ERROR_REASON_UNSPECIFIED = 0; 38*d5c09012SAndroid Build Coastguard Worker 39*d5c09012SAndroid Build Coastguard Worker // The request is calling a disabled service for a consumer. 40*d5c09012SAndroid Build Coastguard Worker // 41*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the consumer "projects/123" contacting 42*d5c09012SAndroid Build Coastguard Worker // "pubsub.googleapis.com" service which is disabled: 43*d5c09012SAndroid Build Coastguard Worker // 44*d5c09012SAndroid Build Coastguard Worker // { "reason": "SERVICE_DISABLED", 45*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 46*d5c09012SAndroid Build Coastguard Worker // "metadata": { 47*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 48*d5c09012SAndroid Build Coastguard Worker // "service": "pubsub.googleapis.com" 49*d5c09012SAndroid Build Coastguard Worker // } 50*d5c09012SAndroid Build Coastguard Worker // } 51*d5c09012SAndroid Build Coastguard Worker // 52*d5c09012SAndroid Build Coastguard Worker // This response indicates the "pubsub.googleapis.com" has been disabled in 53*d5c09012SAndroid Build Coastguard Worker // "projects/123". 54*d5c09012SAndroid Build Coastguard Worker SERVICE_DISABLED = 1; 55*d5c09012SAndroid Build Coastguard Worker 56*d5c09012SAndroid Build Coastguard Worker // The request whose associated billing account is disabled. 57*d5c09012SAndroid Build Coastguard Worker // 58*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the consumer "projects/123" fails to contact 59*d5c09012SAndroid Build Coastguard Worker // "pubsub.googleapis.com" service because the associated billing account is 60*d5c09012SAndroid Build Coastguard Worker // disabled: 61*d5c09012SAndroid Build Coastguard Worker // 62*d5c09012SAndroid Build Coastguard Worker // { "reason": "BILLING_DISABLED", 63*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 64*d5c09012SAndroid Build Coastguard Worker // "metadata": { 65*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 66*d5c09012SAndroid Build Coastguard Worker // "service": "pubsub.googleapis.com" 67*d5c09012SAndroid Build Coastguard Worker // } 68*d5c09012SAndroid Build Coastguard Worker // } 69*d5c09012SAndroid Build Coastguard Worker // 70*d5c09012SAndroid Build Coastguard Worker // This response indicates the billing account associated has been disabled. 71*d5c09012SAndroid Build Coastguard Worker BILLING_DISABLED = 2; 72*d5c09012SAndroid Build Coastguard Worker 73*d5c09012SAndroid Build Coastguard Worker // The request is denied because the provided [API 74*d5c09012SAndroid Build Coastguard Worker // key](https://cloud.google.com/docs/authentication/api-keys) is invalid. It 75*d5c09012SAndroid Build Coastguard Worker // may be in a bad format, cannot be found, or has been expired). 76*d5c09012SAndroid Build Coastguard Worker // 77*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the request is contacting 78*d5c09012SAndroid Build Coastguard Worker // "storage.googleapis.com" service with an invalid API key: 79*d5c09012SAndroid Build Coastguard Worker // 80*d5c09012SAndroid Build Coastguard Worker // { "reason": "API_KEY_INVALID", 81*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 82*d5c09012SAndroid Build Coastguard Worker // "metadata": { 83*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com", 84*d5c09012SAndroid Build Coastguard Worker // } 85*d5c09012SAndroid Build Coastguard Worker // } 86*d5c09012SAndroid Build Coastguard Worker API_KEY_INVALID = 3; 87*d5c09012SAndroid Build Coastguard Worker 88*d5c09012SAndroid Build Coastguard Worker // The request is denied because it violates [API key API 89*d5c09012SAndroid Build Coastguard Worker // restrictions](https://cloud.google.com/docs/authentication/api-keys#adding_api_restrictions). 90*d5c09012SAndroid Build Coastguard Worker // 91*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the consumer "projects/123" fails to call the 92*d5c09012SAndroid Build Coastguard Worker // "storage.googleapis.com" service because this service is restricted in the 93*d5c09012SAndroid Build Coastguard Worker // API key: 94*d5c09012SAndroid Build Coastguard Worker // 95*d5c09012SAndroid Build Coastguard Worker // { "reason": "API_KEY_SERVICE_BLOCKED", 96*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 97*d5c09012SAndroid Build Coastguard Worker // "metadata": { 98*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 99*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com" 100*d5c09012SAndroid Build Coastguard Worker // } 101*d5c09012SAndroid Build Coastguard Worker // } 102*d5c09012SAndroid Build Coastguard Worker API_KEY_SERVICE_BLOCKED = 4; 103*d5c09012SAndroid Build Coastguard Worker 104*d5c09012SAndroid Build Coastguard Worker // The request is denied because it violates [API key HTTP 105*d5c09012SAndroid Build Coastguard Worker // restrictions](https://cloud.google.com/docs/authentication/api-keys#adding_http_restrictions). 106*d5c09012SAndroid Build Coastguard Worker // 107*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the consumer "projects/123" fails to call 108*d5c09012SAndroid Build Coastguard Worker // "storage.googleapis.com" service because the http referrer of the request 109*d5c09012SAndroid Build Coastguard Worker // violates API key HTTP restrictions: 110*d5c09012SAndroid Build Coastguard Worker // 111*d5c09012SAndroid Build Coastguard Worker // { "reason": "API_KEY_HTTP_REFERRER_BLOCKED", 112*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 113*d5c09012SAndroid Build Coastguard Worker // "metadata": { 114*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 115*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com", 116*d5c09012SAndroid Build Coastguard Worker // } 117*d5c09012SAndroid Build Coastguard Worker // } 118*d5c09012SAndroid Build Coastguard Worker API_KEY_HTTP_REFERRER_BLOCKED = 7; 119*d5c09012SAndroid Build Coastguard Worker 120*d5c09012SAndroid Build Coastguard Worker // The request is denied because it violates [API key IP address 121*d5c09012SAndroid Build Coastguard Worker // restrictions](https://cloud.google.com/docs/authentication/api-keys#adding_application_restrictions). 122*d5c09012SAndroid Build Coastguard Worker // 123*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the consumer "projects/123" fails to call 124*d5c09012SAndroid Build Coastguard Worker // "storage.googleapis.com" service because the caller IP of the request 125*d5c09012SAndroid Build Coastguard Worker // violates API key IP address restrictions: 126*d5c09012SAndroid Build Coastguard Worker // 127*d5c09012SAndroid Build Coastguard Worker // { "reason": "API_KEY_IP_ADDRESS_BLOCKED", 128*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 129*d5c09012SAndroid Build Coastguard Worker // "metadata": { 130*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 131*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com", 132*d5c09012SAndroid Build Coastguard Worker // } 133*d5c09012SAndroid Build Coastguard Worker // } 134*d5c09012SAndroid Build Coastguard Worker API_KEY_IP_ADDRESS_BLOCKED = 8; 135*d5c09012SAndroid Build Coastguard Worker 136*d5c09012SAndroid Build Coastguard Worker // The request is denied because it violates [API key Android application 137*d5c09012SAndroid Build Coastguard Worker // restrictions](https://cloud.google.com/docs/authentication/api-keys#adding_application_restrictions). 138*d5c09012SAndroid Build Coastguard Worker // 139*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the consumer "projects/123" fails to call 140*d5c09012SAndroid Build Coastguard Worker // "storage.googleapis.com" service because the request from the Android apps 141*d5c09012SAndroid Build Coastguard Worker // violates the API key Android application restrictions: 142*d5c09012SAndroid Build Coastguard Worker // 143*d5c09012SAndroid Build Coastguard Worker // { "reason": "API_KEY_ANDROID_APP_BLOCKED", 144*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 145*d5c09012SAndroid Build Coastguard Worker // "metadata": { 146*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 147*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com" 148*d5c09012SAndroid Build Coastguard Worker // } 149*d5c09012SAndroid Build Coastguard Worker // } 150*d5c09012SAndroid Build Coastguard Worker API_KEY_ANDROID_APP_BLOCKED = 9; 151*d5c09012SAndroid Build Coastguard Worker 152*d5c09012SAndroid Build Coastguard Worker // The request is denied because it violates [API key iOS application 153*d5c09012SAndroid Build Coastguard Worker // restrictions](https://cloud.google.com/docs/authentication/api-keys#adding_application_restrictions). 154*d5c09012SAndroid Build Coastguard Worker // 155*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the consumer "projects/123" fails to call 156*d5c09012SAndroid Build Coastguard Worker // "storage.googleapis.com" service because the request from the iOS apps 157*d5c09012SAndroid Build Coastguard Worker // violates the API key iOS application restrictions: 158*d5c09012SAndroid Build Coastguard Worker // 159*d5c09012SAndroid Build Coastguard Worker // { "reason": "API_KEY_IOS_APP_BLOCKED", 160*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 161*d5c09012SAndroid Build Coastguard Worker // "metadata": { 162*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 163*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com" 164*d5c09012SAndroid Build Coastguard Worker // } 165*d5c09012SAndroid Build Coastguard Worker // } 166*d5c09012SAndroid Build Coastguard Worker API_KEY_IOS_APP_BLOCKED = 13; 167*d5c09012SAndroid Build Coastguard Worker 168*d5c09012SAndroid Build Coastguard Worker // The request is denied because there is not enough rate quota for the 169*d5c09012SAndroid Build Coastguard Worker // consumer. 170*d5c09012SAndroid Build Coastguard Worker // 171*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the consumer "projects/123" fails to contact 172*d5c09012SAndroid Build Coastguard Worker // "pubsub.googleapis.com" service because consumer's rate quota usage has 173*d5c09012SAndroid Build Coastguard Worker // reached the maximum value set for the quota limit 174*d5c09012SAndroid Build Coastguard Worker // "ReadsPerMinutePerProject" on the quota metric 175*d5c09012SAndroid Build Coastguard Worker // "pubsub.googleapis.com/read_requests": 176*d5c09012SAndroid Build Coastguard Worker // 177*d5c09012SAndroid Build Coastguard Worker // { "reason": "RATE_LIMIT_EXCEEDED", 178*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 179*d5c09012SAndroid Build Coastguard Worker // "metadata": { 180*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 181*d5c09012SAndroid Build Coastguard Worker // "service": "pubsub.googleapis.com", 182*d5c09012SAndroid Build Coastguard Worker // "quota_metric": "pubsub.googleapis.com/read_requests", 183*d5c09012SAndroid Build Coastguard Worker // "quota_limit": "ReadsPerMinutePerProject" 184*d5c09012SAndroid Build Coastguard Worker // } 185*d5c09012SAndroid Build Coastguard Worker // } 186*d5c09012SAndroid Build Coastguard Worker // 187*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the consumer "projects/123" checks quota on 188*d5c09012SAndroid Build Coastguard Worker // the service "dataflow.googleapis.com" and hits the organization quota 189*d5c09012SAndroid Build Coastguard Worker // limit "DefaultRequestsPerMinutePerOrganization" on the metric 190*d5c09012SAndroid Build Coastguard Worker // "dataflow.googleapis.com/default_requests". 191*d5c09012SAndroid Build Coastguard Worker // 192*d5c09012SAndroid Build Coastguard Worker // { "reason": "RATE_LIMIT_EXCEEDED", 193*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 194*d5c09012SAndroid Build Coastguard Worker // "metadata": { 195*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 196*d5c09012SAndroid Build Coastguard Worker // "service": "dataflow.googleapis.com", 197*d5c09012SAndroid Build Coastguard Worker // "quota_metric": "dataflow.googleapis.com/default_requests", 198*d5c09012SAndroid Build Coastguard Worker // "quota_limit": "DefaultRequestsPerMinutePerOrganization" 199*d5c09012SAndroid Build Coastguard Worker // } 200*d5c09012SAndroid Build Coastguard Worker // } 201*d5c09012SAndroid Build Coastguard Worker RATE_LIMIT_EXCEEDED = 5; 202*d5c09012SAndroid Build Coastguard Worker 203*d5c09012SAndroid Build Coastguard Worker // The request is denied because there is not enough resource quota for the 204*d5c09012SAndroid Build Coastguard Worker // consumer. 205*d5c09012SAndroid Build Coastguard Worker // 206*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the consumer "projects/123" fails to contact 207*d5c09012SAndroid Build Coastguard Worker // "compute.googleapis.com" service because consumer's resource quota usage 208*d5c09012SAndroid Build Coastguard Worker // has reached the maximum value set for the quota limit "VMsPerProject" 209*d5c09012SAndroid Build Coastguard Worker // on the quota metric "compute.googleapis.com/vms": 210*d5c09012SAndroid Build Coastguard Worker // 211*d5c09012SAndroid Build Coastguard Worker // { "reason": "RESOURCE_QUOTA_EXCEEDED", 212*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 213*d5c09012SAndroid Build Coastguard Worker // "metadata": { 214*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 215*d5c09012SAndroid Build Coastguard Worker // "service": "compute.googleapis.com", 216*d5c09012SAndroid Build Coastguard Worker // "quota_metric": "compute.googleapis.com/vms", 217*d5c09012SAndroid Build Coastguard Worker // "quota_limit": "VMsPerProject" 218*d5c09012SAndroid Build Coastguard Worker // } 219*d5c09012SAndroid Build Coastguard Worker // } 220*d5c09012SAndroid Build Coastguard Worker // 221*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the consumer "projects/123" checks resource 222*d5c09012SAndroid Build Coastguard Worker // quota on the service "dataflow.googleapis.com" and hits the organization 223*d5c09012SAndroid Build Coastguard Worker // quota limit "jobs-per-organization" on the metric 224*d5c09012SAndroid Build Coastguard Worker // "dataflow.googleapis.com/job_count". 225*d5c09012SAndroid Build Coastguard Worker // 226*d5c09012SAndroid Build Coastguard Worker // { "reason": "RESOURCE_QUOTA_EXCEEDED", 227*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 228*d5c09012SAndroid Build Coastguard Worker // "metadata": { 229*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 230*d5c09012SAndroid Build Coastguard Worker // "service": "dataflow.googleapis.com", 231*d5c09012SAndroid Build Coastguard Worker // "quota_metric": "dataflow.googleapis.com/job_count", 232*d5c09012SAndroid Build Coastguard Worker // "quota_limit": "jobs-per-organization" 233*d5c09012SAndroid Build Coastguard Worker // } 234*d5c09012SAndroid Build Coastguard Worker // } 235*d5c09012SAndroid Build Coastguard Worker RESOURCE_QUOTA_EXCEEDED = 6; 236*d5c09012SAndroid Build Coastguard Worker 237*d5c09012SAndroid Build Coastguard Worker // The request whose associated billing account address is in a tax restricted 238*d5c09012SAndroid Build Coastguard Worker // location, violates the local tax restrictions when creating resources in 239*d5c09012SAndroid Build Coastguard Worker // the restricted region. 240*d5c09012SAndroid Build Coastguard Worker // 241*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when creating the Cloud Storage Bucket in the 242*d5c09012SAndroid Build Coastguard Worker // container "projects/123" under a tax restricted region 243*d5c09012SAndroid Build Coastguard Worker // "locations/asia-northeast3": 244*d5c09012SAndroid Build Coastguard Worker // 245*d5c09012SAndroid Build Coastguard Worker // { "reason": "LOCATION_TAX_POLICY_VIOLATED", 246*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 247*d5c09012SAndroid Build Coastguard Worker // "metadata": { 248*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 249*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com", 250*d5c09012SAndroid Build Coastguard Worker // "location": "locations/asia-northeast3" 251*d5c09012SAndroid Build Coastguard Worker // } 252*d5c09012SAndroid Build Coastguard Worker // } 253*d5c09012SAndroid Build Coastguard Worker // 254*d5c09012SAndroid Build Coastguard Worker // This response indicates creating the Cloud Storage Bucket in 255*d5c09012SAndroid Build Coastguard Worker // "locations/asia-northeast3" violates the location tax restriction. 256*d5c09012SAndroid Build Coastguard Worker LOCATION_TAX_POLICY_VIOLATED = 10; 257*d5c09012SAndroid Build Coastguard Worker 258*d5c09012SAndroid Build Coastguard Worker // The request is denied because the caller does not have required permission 259*d5c09012SAndroid Build Coastguard Worker // on the user project "projects/123" or the user project is invalid. For more 260*d5c09012SAndroid Build Coastguard Worker // information, check the [userProject System 261*d5c09012SAndroid Build Coastguard Worker // Parameters](https://cloud.google.com/apis/docs/system-parameters). 262*d5c09012SAndroid Build Coastguard Worker // 263*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the caller is calling Cloud Storage service 264*d5c09012SAndroid Build Coastguard Worker // with insufficient permissions on the user project: 265*d5c09012SAndroid Build Coastguard Worker // 266*d5c09012SAndroid Build Coastguard Worker // { "reason": "USER_PROJECT_DENIED", 267*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 268*d5c09012SAndroid Build Coastguard Worker // "metadata": { 269*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 270*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com" 271*d5c09012SAndroid Build Coastguard Worker // } 272*d5c09012SAndroid Build Coastguard Worker // } 273*d5c09012SAndroid Build Coastguard Worker USER_PROJECT_DENIED = 11; 274*d5c09012SAndroid Build Coastguard Worker 275*d5c09012SAndroid Build Coastguard Worker // The request is denied because the consumer "projects/123" is suspended due 276*d5c09012SAndroid Build Coastguard Worker // to Terms of Service(Tos) violations. Check [Project suspension 277*d5c09012SAndroid Build Coastguard Worker // guidelines](https://cloud.google.com/resource-manager/docs/project-suspension-guidelines) 278*d5c09012SAndroid Build Coastguard Worker // for more information. 279*d5c09012SAndroid Build Coastguard Worker // 280*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when calling Cloud Storage service with the 281*d5c09012SAndroid Build Coastguard Worker // suspended consumer "projects/123": 282*d5c09012SAndroid Build Coastguard Worker // 283*d5c09012SAndroid Build Coastguard Worker // { "reason": "CONSUMER_SUSPENDED", 284*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 285*d5c09012SAndroid Build Coastguard Worker // "metadata": { 286*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 287*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com" 288*d5c09012SAndroid Build Coastguard Worker // } 289*d5c09012SAndroid Build Coastguard Worker // } 290*d5c09012SAndroid Build Coastguard Worker CONSUMER_SUSPENDED = 12; 291*d5c09012SAndroid Build Coastguard Worker 292*d5c09012SAndroid Build Coastguard Worker // The request is denied because the associated consumer is invalid. It may be 293*d5c09012SAndroid Build Coastguard Worker // in a bad format, cannot be found, or have been deleted. 294*d5c09012SAndroid Build Coastguard Worker // 295*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when calling Cloud Storage service with the 296*d5c09012SAndroid Build Coastguard Worker // invalid consumer "projects/123": 297*d5c09012SAndroid Build Coastguard Worker // 298*d5c09012SAndroid Build Coastguard Worker // { "reason": "CONSUMER_INVALID", 299*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 300*d5c09012SAndroid Build Coastguard Worker // "metadata": { 301*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 302*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com" 303*d5c09012SAndroid Build Coastguard Worker // } 304*d5c09012SAndroid Build Coastguard Worker // } 305*d5c09012SAndroid Build Coastguard Worker CONSUMER_INVALID = 14; 306*d5c09012SAndroid Build Coastguard Worker 307*d5c09012SAndroid Build Coastguard Worker // The request is denied because it violates [VPC Service 308*d5c09012SAndroid Build Coastguard Worker // Controls](https://cloud.google.com/vpc-service-controls/docs/overview). 309*d5c09012SAndroid Build Coastguard Worker // The 'uid' field is a random generated identifier that customer can use it 310*d5c09012SAndroid Build Coastguard Worker // to search the audit log for a request rejected by VPC Service Controls. For 311*d5c09012SAndroid Build Coastguard Worker // more information, please refer [VPC Service Controls 312*d5c09012SAndroid Build Coastguard Worker // Troubleshooting](https://cloud.google.com/vpc-service-controls/docs/troubleshooting#unique-id) 313*d5c09012SAndroid Build Coastguard Worker // 314*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the consumer "projects/123" fails to call 315*d5c09012SAndroid Build Coastguard Worker // Cloud Storage service because the request is prohibited by the VPC Service 316*d5c09012SAndroid Build Coastguard Worker // Controls. 317*d5c09012SAndroid Build Coastguard Worker // 318*d5c09012SAndroid Build Coastguard Worker // { "reason": "SECURITY_POLICY_VIOLATED", 319*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 320*d5c09012SAndroid Build Coastguard Worker // "metadata": { 321*d5c09012SAndroid Build Coastguard Worker // "uid": "123456789abcde", 322*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 323*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com" 324*d5c09012SAndroid Build Coastguard Worker // } 325*d5c09012SAndroid Build Coastguard Worker // } 326*d5c09012SAndroid Build Coastguard Worker SECURITY_POLICY_VIOLATED = 15; 327*d5c09012SAndroid Build Coastguard Worker 328*d5c09012SAndroid Build Coastguard Worker // The request is denied because the provided access token has expired. 329*d5c09012SAndroid Build Coastguard Worker // 330*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the request is calling Cloud Storage service 331*d5c09012SAndroid Build Coastguard Worker // with an expired access token: 332*d5c09012SAndroid Build Coastguard Worker // 333*d5c09012SAndroid Build Coastguard Worker // { "reason": "ACCESS_TOKEN_EXPIRED", 334*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 335*d5c09012SAndroid Build Coastguard Worker // "metadata": { 336*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com", 337*d5c09012SAndroid Build Coastguard Worker // "method": "google.storage.v1.Storage.GetObject" 338*d5c09012SAndroid Build Coastguard Worker // } 339*d5c09012SAndroid Build Coastguard Worker // } 340*d5c09012SAndroid Build Coastguard Worker ACCESS_TOKEN_EXPIRED = 16; 341*d5c09012SAndroid Build Coastguard Worker 342*d5c09012SAndroid Build Coastguard Worker // The request is denied because the provided access token doesn't have at 343*d5c09012SAndroid Build Coastguard Worker // least one of the acceptable scopes required for the API. Please check 344*d5c09012SAndroid Build Coastguard Worker // [OAuth 2.0 Scopes for Google 345*d5c09012SAndroid Build Coastguard Worker // APIs](https://developers.google.com/identity/protocols/oauth2/scopes) for 346*d5c09012SAndroid Build Coastguard Worker // the list of the OAuth 2.0 scopes that you might need to request to access 347*d5c09012SAndroid Build Coastguard Worker // the API. 348*d5c09012SAndroid Build Coastguard Worker // 349*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the request is calling Cloud Storage service 350*d5c09012SAndroid Build Coastguard Worker // with an access token that is missing required scopes: 351*d5c09012SAndroid Build Coastguard Worker // 352*d5c09012SAndroid Build Coastguard Worker // { "reason": "ACCESS_TOKEN_SCOPE_INSUFFICIENT", 353*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 354*d5c09012SAndroid Build Coastguard Worker // "metadata": { 355*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com", 356*d5c09012SAndroid Build Coastguard Worker // "method": "google.storage.v1.Storage.GetObject" 357*d5c09012SAndroid Build Coastguard Worker // } 358*d5c09012SAndroid Build Coastguard Worker // } 359*d5c09012SAndroid Build Coastguard Worker ACCESS_TOKEN_SCOPE_INSUFFICIENT = 17; 360*d5c09012SAndroid Build Coastguard Worker 361*d5c09012SAndroid Build Coastguard Worker // The request is denied because the account associated with the provided 362*d5c09012SAndroid Build Coastguard Worker // access token is in an invalid state, such as disabled or deleted. 363*d5c09012SAndroid Build Coastguard Worker // For more information, see https://cloud.google.com/docs/authentication. 364*d5c09012SAndroid Build Coastguard Worker // 365*d5c09012SAndroid Build Coastguard Worker // Warning: For privacy reasons, the server may not be able to disclose the 366*d5c09012SAndroid Build Coastguard Worker // email address for some accounts. The client MUST NOT depend on the 367*d5c09012SAndroid Build Coastguard Worker // availability of the `email` attribute. 368*d5c09012SAndroid Build Coastguard Worker // 369*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the request is to the Cloud Storage API with 370*d5c09012SAndroid Build Coastguard Worker // an access token that is associated with a disabled or deleted [service 371*d5c09012SAndroid Build Coastguard Worker // account](http://cloud/iam/docs/service-accounts): 372*d5c09012SAndroid Build Coastguard Worker // 373*d5c09012SAndroid Build Coastguard Worker // { "reason": "ACCOUNT_STATE_INVALID", 374*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 375*d5c09012SAndroid Build Coastguard Worker // "metadata": { 376*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com", 377*d5c09012SAndroid Build Coastguard Worker // "method": "google.storage.v1.Storage.GetObject", 378*d5c09012SAndroid Build Coastguard Worker // "email": "[email protected]" 379*d5c09012SAndroid Build Coastguard Worker // } 380*d5c09012SAndroid Build Coastguard Worker // } 381*d5c09012SAndroid Build Coastguard Worker ACCOUNT_STATE_INVALID = 18; 382*d5c09012SAndroid Build Coastguard Worker 383*d5c09012SAndroid Build Coastguard Worker // The request is denied because the type of the provided access token is not 384*d5c09012SAndroid Build Coastguard Worker // supported by the API being called. 385*d5c09012SAndroid Build Coastguard Worker // 386*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the request is to the Cloud Storage API with 387*d5c09012SAndroid Build Coastguard Worker // an unsupported token type. 388*d5c09012SAndroid Build Coastguard Worker // 389*d5c09012SAndroid Build Coastguard Worker // { "reason": "ACCESS_TOKEN_TYPE_UNSUPPORTED", 390*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 391*d5c09012SAndroid Build Coastguard Worker // "metadata": { 392*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com", 393*d5c09012SAndroid Build Coastguard Worker // "method": "google.storage.v1.Storage.GetObject" 394*d5c09012SAndroid Build Coastguard Worker // } 395*d5c09012SAndroid Build Coastguard Worker // } 396*d5c09012SAndroid Build Coastguard Worker ACCESS_TOKEN_TYPE_UNSUPPORTED = 19; 397*d5c09012SAndroid Build Coastguard Worker 398*d5c09012SAndroid Build Coastguard Worker // The request is denied because the request doesn't have any authentication 399*d5c09012SAndroid Build Coastguard Worker // credentials. For more information regarding the supported authentication 400*d5c09012SAndroid Build Coastguard Worker // strategies for Google Cloud APIs, see 401*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/docs/authentication. 402*d5c09012SAndroid Build Coastguard Worker // 403*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the request is to the Cloud Storage API 404*d5c09012SAndroid Build Coastguard Worker // without any authentication credentials. 405*d5c09012SAndroid Build Coastguard Worker // 406*d5c09012SAndroid Build Coastguard Worker // { "reason": "CREDENTIALS_MISSING", 407*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 408*d5c09012SAndroid Build Coastguard Worker // "metadata": { 409*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com", 410*d5c09012SAndroid Build Coastguard Worker // "method": "google.storage.v1.Storage.GetObject" 411*d5c09012SAndroid Build Coastguard Worker // } 412*d5c09012SAndroid Build Coastguard Worker // } 413*d5c09012SAndroid Build Coastguard Worker CREDENTIALS_MISSING = 20; 414*d5c09012SAndroid Build Coastguard Worker 415*d5c09012SAndroid Build Coastguard Worker // The request is denied because the provided project owning the resource 416*d5c09012SAndroid Build Coastguard Worker // which acts as the [API 417*d5c09012SAndroid Build Coastguard Worker // consumer](https://cloud.google.com/apis/design/glossary#api_consumer) is 418*d5c09012SAndroid Build Coastguard Worker // invalid. It may be in a bad format or empty. 419*d5c09012SAndroid Build Coastguard Worker // 420*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the request is to the Cloud Functions API, 421*d5c09012SAndroid Build Coastguard Worker // but the offered resource project in the request in a bad format which can't 422*d5c09012SAndroid Build Coastguard Worker // perform the ListFunctions method. 423*d5c09012SAndroid Build Coastguard Worker // 424*d5c09012SAndroid Build Coastguard Worker // { "reason": "RESOURCE_PROJECT_INVALID", 425*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 426*d5c09012SAndroid Build Coastguard Worker // "metadata": { 427*d5c09012SAndroid Build Coastguard Worker // "service": "cloudfunctions.googleapis.com", 428*d5c09012SAndroid Build Coastguard Worker // "method": 429*d5c09012SAndroid Build Coastguard Worker // "google.cloud.functions.v1.CloudFunctionsService.ListFunctions" 430*d5c09012SAndroid Build Coastguard Worker // } 431*d5c09012SAndroid Build Coastguard Worker // } 432*d5c09012SAndroid Build Coastguard Worker RESOURCE_PROJECT_INVALID = 21; 433*d5c09012SAndroid Build Coastguard Worker 434*d5c09012SAndroid Build Coastguard Worker // The request is denied because the provided session cookie is missing, 435*d5c09012SAndroid Build Coastguard Worker // invalid or failed to decode. 436*d5c09012SAndroid Build Coastguard Worker // 437*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the request is calling Cloud Storage service 438*d5c09012SAndroid Build Coastguard Worker // with a SID cookie which can't be decoded. 439*d5c09012SAndroid Build Coastguard Worker // 440*d5c09012SAndroid Build Coastguard Worker // { "reason": "SESSION_COOKIE_INVALID", 441*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 442*d5c09012SAndroid Build Coastguard Worker // "metadata": { 443*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com", 444*d5c09012SAndroid Build Coastguard Worker // "method": "google.storage.v1.Storage.GetObject", 445*d5c09012SAndroid Build Coastguard Worker // "cookie": "SID" 446*d5c09012SAndroid Build Coastguard Worker // } 447*d5c09012SAndroid Build Coastguard Worker // } 448*d5c09012SAndroid Build Coastguard Worker SESSION_COOKIE_INVALID = 23; 449*d5c09012SAndroid Build Coastguard Worker 450*d5c09012SAndroid Build Coastguard Worker // The request is denied because the user is from a Google Workspace customer 451*d5c09012SAndroid Build Coastguard Worker // that blocks their users from accessing a particular service. 452*d5c09012SAndroid Build Coastguard Worker // 453*d5c09012SAndroid Build Coastguard Worker // Example scenario: https://support.google.com/a/answer/9197205?hl=en 454*d5c09012SAndroid Build Coastguard Worker // 455*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when access to Google Cloud Storage service is 456*d5c09012SAndroid Build Coastguard Worker // blocked by the Google Workspace administrator: 457*d5c09012SAndroid Build Coastguard Worker // 458*d5c09012SAndroid Build Coastguard Worker // { "reason": "USER_BLOCKED_BY_ADMIN", 459*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 460*d5c09012SAndroid Build Coastguard Worker // "metadata": { 461*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com", 462*d5c09012SAndroid Build Coastguard Worker // "method": "google.storage.v1.Storage.GetObject", 463*d5c09012SAndroid Build Coastguard Worker // } 464*d5c09012SAndroid Build Coastguard Worker // } 465*d5c09012SAndroid Build Coastguard Worker USER_BLOCKED_BY_ADMIN = 24; 466*d5c09012SAndroid Build Coastguard Worker 467*d5c09012SAndroid Build Coastguard Worker // The request is denied because the resource service usage is restricted 468*d5c09012SAndroid Build Coastguard Worker // by administrators according to the organization policy constraint. 469*d5c09012SAndroid Build Coastguard Worker // For more information see 470*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/resource-manager/docs/organization-policy/restricting-services. 471*d5c09012SAndroid Build Coastguard Worker // 472*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when access to Google Cloud Storage service is 473*d5c09012SAndroid Build Coastguard Worker // restricted by Resource Usage Restriction policy: 474*d5c09012SAndroid Build Coastguard Worker // 475*d5c09012SAndroid Build Coastguard Worker // { "reason": "RESOURCE_USAGE_RESTRICTION_VIOLATED", 476*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 477*d5c09012SAndroid Build Coastguard Worker // "metadata": { 478*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/project-123", 479*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com" 480*d5c09012SAndroid Build Coastguard Worker // } 481*d5c09012SAndroid Build Coastguard Worker // } 482*d5c09012SAndroid Build Coastguard Worker RESOURCE_USAGE_RESTRICTION_VIOLATED = 25; 483*d5c09012SAndroid Build Coastguard Worker 484*d5c09012SAndroid Build Coastguard Worker // Unimplemented. Do not use. 485*d5c09012SAndroid Build Coastguard Worker // 486*d5c09012SAndroid Build Coastguard Worker // The request is denied because it contains unsupported system parameters in 487*d5c09012SAndroid Build Coastguard Worker // URL query parameters or HTTP headers. For more information, 488*d5c09012SAndroid Build Coastguard Worker // see https://cloud.google.com/apis/docs/system-parameters 489*d5c09012SAndroid Build Coastguard Worker // 490*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when access "pubsub.googleapis.com" service with 491*d5c09012SAndroid Build Coastguard Worker // a request header of "x-goog-user-ip": 492*d5c09012SAndroid Build Coastguard Worker // 493*d5c09012SAndroid Build Coastguard Worker // { "reason": "SYSTEM_PARAMETER_UNSUPPORTED", 494*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 495*d5c09012SAndroid Build Coastguard Worker // "metadata": { 496*d5c09012SAndroid Build Coastguard Worker // "service": "pubsub.googleapis.com" 497*d5c09012SAndroid Build Coastguard Worker // "parameter": "x-goog-user-ip" 498*d5c09012SAndroid Build Coastguard Worker // } 499*d5c09012SAndroid Build Coastguard Worker // } 500*d5c09012SAndroid Build Coastguard Worker SYSTEM_PARAMETER_UNSUPPORTED = 26; 501*d5c09012SAndroid Build Coastguard Worker 502*d5c09012SAndroid Build Coastguard Worker // The request is denied because it violates Org Restriction: the requested 503*d5c09012SAndroid Build Coastguard Worker // resource does not belong to allowed organizations specified in 504*d5c09012SAndroid Build Coastguard Worker // "X-Goog-Allowed-Resources" header. 505*d5c09012SAndroid Build Coastguard Worker // 506*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when accessing a GCP resource that is restricted by 507*d5c09012SAndroid Build Coastguard Worker // Org Restriction for "pubsub.googleapis.com" service. 508*d5c09012SAndroid Build Coastguard Worker // 509*d5c09012SAndroid Build Coastguard Worker // { 510*d5c09012SAndroid Build Coastguard Worker // reason: "ORG_RESTRICTION_VIOLATION" 511*d5c09012SAndroid Build Coastguard Worker // domain: "googleapis.com" 512*d5c09012SAndroid Build Coastguard Worker // metadata { 513*d5c09012SAndroid Build Coastguard Worker // "consumer":"projects/123456" 514*d5c09012SAndroid Build Coastguard Worker // "service": "pubsub.googleapis.com" 515*d5c09012SAndroid Build Coastguard Worker // } 516*d5c09012SAndroid Build Coastguard Worker // } 517*d5c09012SAndroid Build Coastguard Worker ORG_RESTRICTION_VIOLATION = 27; 518*d5c09012SAndroid Build Coastguard Worker 519*d5c09012SAndroid Build Coastguard Worker // The request is denied because "X-Goog-Allowed-Resources" header is in a bad 520*d5c09012SAndroid Build Coastguard Worker // format. 521*d5c09012SAndroid Build Coastguard Worker // 522*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when 523*d5c09012SAndroid Build Coastguard Worker // accessing "pubsub.googleapis.com" service with an invalid 524*d5c09012SAndroid Build Coastguard Worker // "X-Goog-Allowed-Resources" request header. 525*d5c09012SAndroid Build Coastguard Worker // 526*d5c09012SAndroid Build Coastguard Worker // { 527*d5c09012SAndroid Build Coastguard Worker // reason: "ORG_RESTRICTION_HEADER_INVALID" 528*d5c09012SAndroid Build Coastguard Worker // domain: "googleapis.com" 529*d5c09012SAndroid Build Coastguard Worker // metadata { 530*d5c09012SAndroid Build Coastguard Worker // "consumer":"projects/123456" 531*d5c09012SAndroid Build Coastguard Worker // "service": "pubsub.googleapis.com" 532*d5c09012SAndroid Build Coastguard Worker // } 533*d5c09012SAndroid Build Coastguard Worker // } 534*d5c09012SAndroid Build Coastguard Worker ORG_RESTRICTION_HEADER_INVALID = 28; 535*d5c09012SAndroid Build Coastguard Worker 536*d5c09012SAndroid Build Coastguard Worker // Unimplemented. Do not use. 537*d5c09012SAndroid Build Coastguard Worker // 538*d5c09012SAndroid Build Coastguard Worker // The request is calling a service that is not visible to the consumer. 539*d5c09012SAndroid Build Coastguard Worker // 540*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the consumer "projects/123" contacting 541*d5c09012SAndroid Build Coastguard Worker // "pubsub.googleapis.com" service which is not visible to the consumer. 542*d5c09012SAndroid Build Coastguard Worker // 543*d5c09012SAndroid Build Coastguard Worker // { "reason": "SERVICE_NOT_VISIBLE", 544*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 545*d5c09012SAndroid Build Coastguard Worker // "metadata": { 546*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 547*d5c09012SAndroid Build Coastguard Worker // "service": "pubsub.googleapis.com" 548*d5c09012SAndroid Build Coastguard Worker // } 549*d5c09012SAndroid Build Coastguard Worker // } 550*d5c09012SAndroid Build Coastguard Worker // 551*d5c09012SAndroid Build Coastguard Worker // This response indicates the "pubsub.googleapis.com" is not visible to 552*d5c09012SAndroid Build Coastguard Worker // "projects/123" (or it may not exist). 553*d5c09012SAndroid Build Coastguard Worker SERVICE_NOT_VISIBLE = 29; 554*d5c09012SAndroid Build Coastguard Worker 555*d5c09012SAndroid Build Coastguard Worker // The request is related to a project for which GCP access is suspended. 556*d5c09012SAndroid Build Coastguard Worker // 557*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when the consumer "projects/123" fails to contact 558*d5c09012SAndroid Build Coastguard Worker // "pubsub.googleapis.com" service because GCP access is suspended: 559*d5c09012SAndroid Build Coastguard Worker // 560*d5c09012SAndroid Build Coastguard Worker // { "reason": "GCP_SUSPENDED", 561*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 562*d5c09012SAndroid Build Coastguard Worker // "metadata": { 563*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 564*d5c09012SAndroid Build Coastguard Worker // "service": "pubsub.googleapis.com" 565*d5c09012SAndroid Build Coastguard Worker // } 566*d5c09012SAndroid Build Coastguard Worker // } 567*d5c09012SAndroid Build Coastguard Worker // 568*d5c09012SAndroid Build Coastguard Worker // This response indicates the associated GCP account has been suspended. 569*d5c09012SAndroid Build Coastguard Worker GCP_SUSPENDED = 30; 570*d5c09012SAndroid Build Coastguard Worker 571*d5c09012SAndroid Build Coastguard Worker // The request violates the location policies when creating resources in 572*d5c09012SAndroid Build Coastguard Worker // the restricted region. 573*d5c09012SAndroid Build Coastguard Worker // 574*d5c09012SAndroid Build Coastguard Worker // Example of an ErrorInfo when creating the Cloud Storage Bucket by 575*d5c09012SAndroid Build Coastguard Worker // "projects/123" for service storage.googleapis.com: 576*d5c09012SAndroid Build Coastguard Worker // 577*d5c09012SAndroid Build Coastguard Worker // { "reason": "LOCATION_POLICY_VIOLATED", 578*d5c09012SAndroid Build Coastguard Worker // "domain": "googleapis.com", 579*d5c09012SAndroid Build Coastguard Worker // "metadata": { 580*d5c09012SAndroid Build Coastguard Worker // "consumer": "projects/123", 581*d5c09012SAndroid Build Coastguard Worker // "service": "storage.googleapis.com", 582*d5c09012SAndroid Build Coastguard Worker // } 583*d5c09012SAndroid Build Coastguard Worker // } 584*d5c09012SAndroid Build Coastguard Worker // 585*d5c09012SAndroid Build Coastguard Worker // This response indicates creating the Cloud Storage Bucket in 586*d5c09012SAndroid Build Coastguard Worker // "locations/asia-northeast3" violates at least one location policy. 587*d5c09012SAndroid Build Coastguard Worker // The troubleshooting guidance is provided in the Help links. 588*d5c09012SAndroid Build Coastguard Worker LOCATION_POLICY_VIOLATED = 31; 589*d5c09012SAndroid Build Coastguard Worker} 590