{
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "View and manage your data across Google Cloud Platform services"
        },
        "https://www.googleapis.com/auth/servicecontrol": {
          "description": "Manage your Google Service Control data"
        }
      }
    }
  },
  "basePath": "",
  "baseUrl": "https://servicecontrol.googleapis.com/",
  "batchPath": "batch",
  "canonicalName": "Service Control",
  "description": "Provides control plane functionality to managed services, such as logging, monitoring, and status checks.",
  "discoveryVersion": "v1",
  "documentationLink": "https://cloud.google.com/service-control/",
  "fullyEncodeReservedExpansion": true,
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "id": "servicecontrol:v1",
  "kind": "discovery#restDescription",
  "name": "servicecontrol",
  "ownerDomain": "google.com",
  "ownerName": "Google",
  "parameters": {
    "$.xgafv": {
      "description": "V1 error format.",
      "enum": [
        "1",
        "2"
      ],
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query",
      "type": "string"
    },
    "access_token": {
      "description": "OAuth access token.",
      "location": "query",
      "type": "string"
    },
    "alt": {
      "default": "json",
      "description": "Data format for response.",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query",
      "type": "string"
    },
    "callback": {
      "description": "JSONP",
      "location": "query",
      "type": "string"
    },
    "fields": {
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query",
      "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.",
      "location": "query",
      "type": "string"
    },
    "oauth_token": {
      "description": "OAuth 2.0 token for the current user.",
      "location": "query",
      "type": "string"
    },
    "prettyPrint": {
      "default": "true",
      "description": "Returns response with indentations and line breaks.",
      "location": "query",
      "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.",
      "location": "query",
      "type": "string"
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query",
      "type": "string"
    }
  },
  "protocol": "rest",
  "resources": {
    "services": {
      "methods": {
        "allocateQuota": {
          "description": "Attempts to allocate quota for the specified consumer. It should be called\nbefore the operation is executed.\n\nThis method requires the `servicemanagement.services.quota`\npermission on the specified service. For more information, see\n[Cloud IAM](https://cloud.google.com/iam).\n\n**NOTE:** The client **must** fail-open on server errors `INTERNAL`,\n`UNKNOWN`, `DEADLINE_EXCEEDED`, and `UNAVAILABLE`. To ensure system\nreliability, the server may inject these errors to prohibit any hard\ndependency on the quota functionality.",
          "flatPath": "v1/services/{serviceName}:allocateQuota",
          "httpMethod": "POST",
          "id": "servicecontrol.services.allocateQuota",
          "parameterOrder": [
            "serviceName"
          ],
          "parameters": {
            "serviceName": {
              "description": "Name of the service as specified in the service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee google.api.Service for the definition of a service name.",
              "location": "path",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1/services/{serviceName}:allocateQuota",
          "request": {
            "$ref": "AllocateQuotaRequest"
          },
          "response": {
            "$ref": "AllocateQuotaResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/servicecontrol"
          ]
        },
        "check": {
          "description": "Checks whether an operation on a service should be allowed to proceed\nbased on the configuration of the service and related policies. It must be\ncalled before the operation is executed.\n\nIf feasible, the client should cache the check results and reuse them for\n60 seconds. In case of any server errors, the client should rely on the\ncached results for much longer time to avoid outage.\nWARNING: There is general 60s delay for the configuration and policy\npropagation, therefore callers MUST NOT depend on the `Check` method having\nthe latest policy information.\n\nNOTE: the CheckRequest has the size limit of 64KB.\n\nThis method requires the `servicemanagement.services.check` permission\non the specified service. For more information, see\n[Cloud IAM](https://cloud.google.com/iam).",
          "flatPath": "v1/services/{serviceName}:check",
          "httpMethod": "POST",
          "id": "servicecontrol.services.check",
          "parameterOrder": [
            "serviceName"
          ],
          "parameters": {
            "serviceName": {
              "description": "The service name as specified in its service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee\n[google.api.Service](https://cloud.google.com/service-management/reference/rpc/google.api#google.api.Service)\nfor the definition of a service name.",
              "location": "path",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1/services/{serviceName}:check",
          "request": {
            "$ref": "CheckRequest"
          },
          "response": {
            "$ref": "CheckResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/servicecontrol"
          ]
        },
        "report": {
          "description": "Reports operation results to Google Service Control, such as logs and\nmetrics. It should be called after an operation is completed.\n\nIf feasible, the client should aggregate reporting data for up to 5\nseconds to reduce API traffic. Limiting aggregation to 5 seconds is to\nreduce data loss during client crashes. Clients should carefully choose\nthe aggregation time window to avoid data loss risk more than 0.01%\nfor business and compliance reasons.\n\nNOTE: the ReportRequest has the size limit (wire-format byte size) of\n1MB.\n\nThis method requires the `servicemanagement.services.report` permission\non the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).",
          "flatPath": "v1/services/{serviceName}:report",
          "httpMethod": "POST",
          "id": "servicecontrol.services.report",
          "parameterOrder": [
            "serviceName"
          ],
          "parameters": {
            "serviceName": {
              "description": "The service name as specified in its service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee\n[google.api.Service](https://cloud.google.com/service-management/reference/rpc/google.api#google.api.Service)\nfor the definition of a service name.",
              "location": "path",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1/services/{serviceName}:report",
          "request": {
            "$ref": "ReportRequest"
          },
          "response": {
            "$ref": "ReportResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/servicecontrol"
          ]
        }
      }
    }
  },
  "revision": "20191206",
  "rootUrl": "https://servicecontrol.googleapis.com/",
  "schemas": {
    "AllocateInfo": {
      "id": "AllocateInfo",
      "properties": {
        "unusedArguments": {
          "description": "A list of label keys that were unused by the server in processing the\nrequest. Thus, for similar requests repeated in a certain future time\nwindow, the caller can choose to ignore these labels in the requests\nto achieve better client-side cache hits and quota aggregation for rate\nquota. This field is not populated for allocation quota checks.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "AllocateQuotaRequest": {
      "description": "Request message for the AllocateQuota method.",
      "id": "AllocateQuotaRequest",
      "properties": {
        "allocateOperation": {
          "$ref": "QuotaOperation",
          "description": "Operation that describes the quota allocation."
        },
        "serviceConfigId": {
          "description": "Specifies which version of service configuration should be used to process\nthe request. If unspecified or no matching version can be found, the latest\none will be used.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "AllocateQuotaResponse": {
      "description": "Response message for the AllocateQuota method.",
      "id": "AllocateQuotaResponse",
      "properties": {
        "allocateErrors": {
          "description": "Indicates the decision of the allocate.",
          "items": {
            "$ref": "QuotaError"
          },
          "type": "array"
        },
        "allocateInfo": {
          "$ref": "AllocateInfo",
          "description": "WARNING: DO NOT use this field until this warning message is removed."
        },
        "operationId": {
          "description": "The same operation_id value used in the AllocateQuotaRequest. Used for\nlogging and diagnostics purposes.",
          "type": "string"
        },
        "quotaMetrics": {
          "description": "Quota metrics to indicate the result of allocation. Depending on the\nrequest, one or more of the following metrics will be included:\n\n1. Per quota group or per quota metric incremental usage will be specified\nusing the following delta metric :\n  \"serviceruntime.googleapis.com/api/consumer/quota_used_count\"\n\n2. The quota limit reached condition will be specified using the following\nboolean metric :\n  \"serviceruntime.googleapis.com/quota/exceeded\"",
          "items": {
            "$ref": "MetricValueSet"
          },
          "type": "array"
        },
        "serviceConfigId": {
          "description": "ID of the actual config used to process the request.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "AuditLog": {
      "description": "Common audit log format for Google Cloud Platform API operations.\n\n\n",
      "id": "AuditLog",
      "properties": {
        "authenticationInfo": {
          "$ref": "AuthenticationInfo",
          "description": "Authentication information."
        },
        "authorizationInfo": {
          "description": "Authorization information. If there are multiple\nresources or permissions involved, then there is\none AuthorizationInfo element for each {resource, permission} tuple.",
          "items": {
            "$ref": "AuthorizationInfo"
          },
          "type": "array"
        },
        "metadata": {
          "additionalProperties": {
            "description": "Properties of the object.",
            "type": "any"
          },
          "description": "Other service-specific data about the request, response, and other\ninformation associated with the current audited event.",
          "type": "object"
        },
        "methodName": {
          "description": "The name of the service method or operation.\nFor API calls, this should be the name of the API method.\nFor example,\n\n    \"google.datastore.v1.Datastore.RunQuery\"\n    \"google.logging.v1.LoggingService.DeleteLog\"",
          "type": "string"
        },
        "numResponseItems": {
          "description": "The number of items returned from a List or Query API method,\nif applicable.",
          "format": "int64",
          "type": "string"
        },
        "request": {
          "additionalProperties": {
            "description": "Properties of the object.",
            "type": "any"
          },
          "description": "The operation request. This may not include all request parameters,\nsuch as those that are too large, privacy-sensitive, or duplicated\nelsewhere in the log record.\nIt should never include user-generated data, such as file contents.\nWhen the JSON object represented here has a proto equivalent, the proto\nname will be indicated in the `@type` property.",
          "type": "object"
        },
        "requestMetadata": {
          "$ref": "RequestMetadata",
          "description": "Metadata about the operation."
        },
        "resourceLocation": {
          "$ref": "ResourceLocation",
          "description": "The resource location information."
        },
        "resourceName": {
          "description": "The resource or collection that is the target of the operation.\nThe name is a scheme-less URI, not including the API service name.\nFor example:\n\n    \"shelves/SHELF_ID/books\"\n    \"shelves/SHELF_ID/books/BOOK_ID\"",
          "type": "string"
        },
        "resourceOriginalState": {
          "additionalProperties": {
            "description": "Properties of the object.",
            "type": "any"
          },
          "description": "The resource's original state before mutation. Present only for\noperations which have successfully modified the targeted resource(s).\nIn general, this field should contain all changed fields, except those\nthat are already been included in `request`, `response`, `metadata` or\n`service_data` fields.\nWhen the JSON object represented here has a proto equivalent,\nthe proto name will be indicated in the `@type` property.",
          "type": "object"
        },
        "response": {
          "additionalProperties": {
            "description": "Properties of the object.",
            "type": "any"
          },
          "description": "The operation response. This may not include all response elements,\nsuch as those that are too large, privacy-sensitive, or duplicated\nelsewhere in the log record.\nIt should never include user-generated data, such as file contents.\nWhen the JSON object represented here has a proto equivalent, the proto\nname will be indicated in the `@type` property.",
          "type": "object"
        },
        "serviceData": {
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "description": "Deprecated, use `metadata` field instead.\nOther service-specific data about the request, response, and other\nactivities.",
          "type": "object"
        },
        "serviceName": {
          "description": "The name of the API service performing the operation. For example,\n`\"datastore.googleapis.com\"`.",
          "type": "string"
        },
        "status": {
          "$ref": "Status",
          "description": "The status of the overall operation."
        }
      },
      "type": "object"
    },
    "Auth": {
      "description": "This message defines request authentication attributes. Terminology is\nbased on the JSON Web Token (JWT) standard, but the terms also\ncorrelate to concepts in other standards.",
      "id": "Auth",
      "properties": {
        "accessLevels": {
          "description": "A list of access level resource names that allow resources to be\naccessed by authenticated requester. It is part of Secure GCP processing\nfor the incoming request. An access level string has the format:\n\"//{api_service_name}/accessPolicies/{policy_id}/accessLevels/{short_name}\"\n\nExample:\n\"//accesscontextmanager.googleapis.com/accessPolicies/MY_POLICY_ID/accessLevels/MY_LEVEL\"",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "audiences": {
          "description": "The intended audience(s) for this authentication information. Reflects\nthe audience (`aud`) claim within a JWT. The audience\nvalue(s) depends on the `issuer`, but typically include one or more of\nthe following pieces of information:\n\n*  The services intended to receive the credential such as\n   [\"pubsub.googleapis.com\", \"storage.googleapis.com\"]\n*  A set of service-based scopes. For example,\n   [\"https://www.googleapis.com/auth/cloud-platform\"]\n*  The client id of an app, such as the Firebase project id for JWTs\n   from Firebase Auth.\n\nConsult the documentation for the credential issuer to determine the\ninformation provided.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "claims": {
          "additionalProperties": {
            "description": "Properties of the object.",
            "type": "any"
          },
          "description": "Structured claims presented with the credential. JWTs include\n`{key: value}` pairs for standard and private claims. The following\nis a subset of the standard required and optional claims that would\ntypically be presented for a Google-based JWT:\n\n   {'iss': 'accounts.google.com',\n    'sub': '113289723416554971153',\n    'aud': ['123456789012', 'pubsub.googleapis.com'],\n    'azp': '123456789012.apps.googleusercontent.com',\n    'email': 'jsmith@example.com',\n    'iat': 1353601026,\n    'exp': 1353604926}\n\nSAML assertions are similarly specified, but with an identity provider\ndependent structure.",
          "type": "object"
        },
        "presenter": {
          "description": "The authorized presenter of the credential. Reflects the optional\nAuthorized Presenter (`azp`) claim within a JWT or the\nOAuth client id. For example, a Google Cloud Platform client id looks\nas follows: \"123456789012.apps.googleusercontent.com\".",
          "type": "string"
        },
        "principal": {
          "description": "The authenticated principal. Reflects the issuer (`iss`) and subject\n(`sub`) claims within a JWT. The issuer and subject should be `/`\ndelimited, with `/` percent-encoded within the subject fragment. For\nGoogle accounts, the principal format is:\n\"https://accounts.google.com/{id}\"",
          "type": "string"
        }
      },
      "type": "object"
    },
    "AuthenticationInfo": {
      "description": "Authentication information for the operation.",
      "id": "AuthenticationInfo",
      "properties": {
        "authoritySelector": {
          "description": "The authority selector specified by the requestor, if any.\nIt is not guaranteed that the principal was allowed to use this authority.",
          "type": "string"
        },
        "principalEmail": {
          "description": "The email address of the authenticated user (or service account on behalf\nof third party principal) making the request. For privacy reasons, the\nprincipal email address is redacted for all read-only operations that fail\nwith a \"permission denied\" error.",
          "type": "string"
        },
        "principalSubject": {
          "description": "String representation of identity of requesting party.\nPopulated for both first and third party identities.",
          "type": "string"
        },
        "serviceAccountDelegationInfo": {
          "description": "Identity delegation history of an authenticated service account that makes\nthe request. It contains information on the real authorities that try to\naccess GCP resources by delegating on a service account. When multiple\nauthorities present, they are guaranteed to be sorted based on the original\nordering of the identity delegation events.",
          "items": {
            "$ref": "ServiceAccountDelegationInfo"
          },
          "type": "array"
        },
        "serviceAccountKeyName": {
          "description": "The name of the service account key used to create or exchange\ncredentials for authenticating the service account making the request.\nThis is a scheme-less URI full resource name. For example:\n\n\"//iam.googleapis.com/projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}\"",
          "type": "string"
        },
        "thirdPartyPrincipal": {
          "additionalProperties": {
            "description": "Properties of the object.",
            "type": "any"
          },
          "description": "The third party identification (if any) of the authenticated user making\nthe request.\nWhen the JSON object represented here has a proto equivalent, the proto\nname will be indicated in the `@type` property.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "AuthorizationInfo": {
      "description": "Authorization information for the operation.",
      "id": "AuthorizationInfo",
      "properties": {
        "granted": {
          "description": "Whether or not authorization for `resource` and `permission`\nwas granted.",
          "type": "boolean"
        },
        "permission": {
          "description": "The required IAM permission.",
          "type": "string"
        },
        "resource": {
          "description": "The resource being accessed, as a REST-style string. For example:\n\n    bigquery.googleapis.com/projects/PROJECTID/datasets/DATASETID",
          "type": "string"
        },
        "resourceAttributes": {
          "$ref": "Resource",
          "description": "Resource attributes used in IAM condition evaluation. This field contains\nresource attributes like resource type and resource name.\n\nTo get the whole view of the attributes used in IAM\ncondition evaluation, the user must also look into\n`AuditLog.request_metadata.request_attributes`."
        }
      },
      "type": "object"
    },
    "CheckError": {
      "description": "Defines the errors to be returned in\ngoogle.api.servicecontrol.v1.CheckResponse.check_errors.",
      "id": "CheckError",
      "properties": {
        "code": {
          "description": "The error code.",
          "enum": [
            "ERROR_CODE_UNSPECIFIED",
            "NOT_FOUND",
            "PERMISSION_DENIED",
            "RESOURCE_EXHAUSTED",
            "BUDGET_EXCEEDED",
            "DENIAL_OF_SERVICE_DETECTED",
            "LOAD_SHEDDING",
            "ABUSER_DETECTED",
            "SERVICE_NOT_ACTIVATED",
            "VISIBILITY_DENIED",
            "BILLING_DISABLED",
            "PROJECT_DELETED",
            "PROJECT_INVALID",
            "CONSUMER_INVALID",
            "IP_ADDRESS_BLOCKED",
            "REFERER_BLOCKED",
            "CLIENT_APP_BLOCKED",
            "API_TARGET_BLOCKED",
            "API_KEY_INVALID",
            "API_KEY_EXPIRED",
            "API_KEY_NOT_FOUND",
            "SPATULA_HEADER_INVALID",
            "LOAS_ROLE_INVALID",
            "NO_LOAS_PROJECT",
            "LOAS_PROJECT_DISABLED",
            "SECURITY_POLICY_VIOLATED",
            "INVALID_CREDENTIAL",
            "LOCATION_POLICY_VIOLATED",
            "NAMESPACE_LOOKUP_UNAVAILABLE",
            "SERVICE_STATUS_UNAVAILABLE",
            "BILLING_STATUS_UNAVAILABLE",
            "QUOTA_CHECK_UNAVAILABLE",
            "LOAS_PROJECT_LOOKUP_UNAVAILABLE",
            "CLOUD_RESOURCE_MANAGER_BACKEND_UNAVAILABLE",
            "SECURITY_POLICY_BACKEND_UNAVAILABLE",
            "LOCATION_POLICY_BACKEND_UNAVAILABLE"
          ],
          "enumDescriptions": [
            "This is never used in `CheckResponse`.",
            "The consumer's project id, network container, or resource container was\nnot found. Same as google.rpc.Code.NOT_FOUND.",
            "The consumer doesn't have access to the specified resource.\nSame as google.rpc.Code.PERMISSION_DENIED.",
            "Quota check failed. Same as google.rpc.Code.RESOURCE_EXHAUSTED.",
            "Budget check failed.",
            "The consumer's request has been flagged as a DoS attack.",
            "The consumer's request should be rejected in order to protect the service\nfrom being overloaded.",
            "The consumer has been flagged as an abuser.",
            "The consumer hasn't activated the service.",
            "The consumer cannot access the service due to visibility configuration.",
            "The consumer cannot access the service because billing is disabled.",
            "The consumer's project has been marked as deleted (soft deletion).",
            "The consumer's project number or id does not represent a valid project.",
            "The input consumer info does not represent a valid consumer folder or\norganization.",
            "The IP address of the consumer is invalid for the specific consumer\nproject.",
            "The referer address of the consumer request is invalid for the specific\nconsumer project.",
            "The client application of the consumer request is invalid for the\nspecific consumer project.",
            "The API targeted by this request is invalid for the specified consumer\nproject.",
            "The consumer's API key is invalid.",
            "The consumer's API Key has expired.",
            "The consumer's API Key was not found in config record.",
            "The consumer's spatula header is invalid.",
            "The consumer's LOAS role is invalid.",
            "The consumer's LOAS role has no associated project.",
            "The consumer's LOAS project is not `ACTIVE` in LoquatV2.",
            "Request is not allowed as per security policies defined in Org Policy.",
            "The credential in the request can not be verified.",
            "Request is not allowed as per location policies defined in Org Policy.",
            "The backend server for looking up project id/number is unavailable.",
            "The backend server for checking service status is unavailable.",
            "The backend server for checking billing status is unavailable.",
            "The backend server for checking quota limits is unavailable.",
            "The Spanner for looking up LOAS project is unavailable.",
            "Cloud Resource Manager backend server is unavailable.",
            "NOTE: for customers in the scope of Beta/GA of\nhttps://cloud.google.com/vpc-service-controls, this error\nis no longer returned. If the security backend is unavailable, rpc\nUNAVAILABLE status will be returned instead. It should be ignored and\nshould not be used to reject client requests.",
            "Backend server for evaluating location policy is unavailable."
          ],
          "type": "string"
        },
        "detail": {
          "description": "Free-form text providing details on the error cause of the error.",
          "type": "string"
        },
        "status": {
          "$ref": "Status",
          "description": "Contains public information about the check error. If available,\n`status.code` will be non zero and client can propagate it out as public\nerror."
        },
        "subject": {
          "description": "Subject to whom this error applies. See the specific code enum for more\ndetails on this field. For example:\n    - “project:\u003cproject-id or project-number\u003e”\n    - “folder:\u003cfolder-id\u003e”\n    - “organization:\u003corganization-id\u003e”",
          "type": "string"
        }
      },
      "type": "object"
    },
    "CheckInfo": {
      "description": "Contains additional information about the check operation.",
      "id": "CheckInfo",
      "properties": {
        "consumerInfo": {
          "$ref": "ConsumerInfo",
          "description": "Consumer info of this check."
        },
        "unusedArguments": {
          "description": "A list of fields and label keys that are ignored by the server.\nThe client doesn't need to send them for following requests to improve\nperformance and allow better aggregation.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "CheckRequest": {
      "description": "Request message for the Check method.",
      "id": "CheckRequest",
      "properties": {
        "operation": {
          "$ref": "Operation",
          "description": "The operation to be checked."
        },
        "requestProjectSettings": {
          "description": "Requests the project settings to be returned as part of the check response.",
          "type": "boolean"
        },
        "serviceConfigId": {
          "description": "Specifies which version of service configuration should be used to process\nthe request.\n\nIf unspecified or no matching version can be found, the\nlatest one will be used.",
          "type": "string"
        },
        "skipActivationCheck": {
          "description": "Indicates if service activation check should be skipped for this request.\nDefault behavior is to perform the check and apply relevant quota.\nWARNING: Setting this flag to \"true\" will disable quota enforcement.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "CheckResponse": {
      "description": "Response message for the Check method.",
      "id": "CheckResponse",
      "properties": {
        "checkErrors": {
          "description": "Indicate the decision of the check.\n\nIf no check errors are present, the service should process the operation.\nOtherwise the service should use the list of errors to determine the\nappropriate action.",
          "items": {
            "$ref": "CheckError"
          },
          "type": "array"
        },
        "checkInfo": {
          "$ref": "CheckInfo",
          "description": "Feedback data returned from the server during processing a Check request."
        },
        "operationId": {
          "description": "The same operation_id value used in the CheckRequest.\nUsed for logging and diagnostics purposes.",
          "type": "string"
        },
        "quotaInfo": {
          "$ref": "QuotaInfo",
          "description": "Quota information for the check request associated with this response.\n"
        },
        "serviceConfigId": {
          "description": "The actual config id used to process the request.",
          "type": "string"
        },
        "serviceRolloutId": {
          "description": "Unimplemented. The current service rollout id used to process the request.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ConsumerInfo": {
      "description": "`ConsumerInfo` provides information about the consumer.",
      "id": "ConsumerInfo",
      "properties": {
        "consumerNumber": {
          "description": "The consumer identity number, can be Google cloud project number, folder\nnumber or organization number e.g. 1234567890. A value of 0 indicates no\nconsumer number is found.",
          "format": "int64",
          "type": "string"
        },
        "projectNumber": {
          "description": "The Google cloud project number, e.g. 1234567890. A value of 0 indicates\nno project number is found.\n\nNOTE: This field is deprecated after Chemist support flexible consumer\nid. New code should not depend on this field anymore.",
          "format": "int64",
          "type": "string"
        },
        "type": {
          "description": "The type of the consumer which should have been defined in\n[Google Resource Manager](https://cloud.google.com/resource-manager/).",
          "enum": [
            "CONSUMER_TYPE_UNSPECIFIED",
            "PROJECT",
            "FOLDER",
            "ORGANIZATION",
            "SERVICE_SPECIFIC"
          ],
          "enumDescriptions": [
            "This is never used.",
            "The consumer is a Google Cloud Project.",
            "The consumer is a Google Cloud Folder.",
            "The consumer is a Google Cloud Organization.",
            "Service-specific resource container which is defined by the service\nproducer to offer their users the ability to manage service control\nfunctionalities at a finer level of granularity than the PROJECT."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "Distribution": {
      "description": "Distribution represents a frequency distribution of double-valued sample\npoints. It contains the size of the population of sample points plus\nadditional optional information:\n\n  - the arithmetic mean of the samples\n  - the minimum and maximum of the samples\n  - the sum-squared-deviation of the samples, used to compute variance\n  - a histogram of the values of the sample points",
      "id": "Distribution",
      "properties": {
        "bucketCounts": {
          "description": "The number of samples in each histogram bucket. `bucket_counts` are\noptional. If present, they must sum to the `count` value.\n\nThe buckets are defined below in `bucket_option`. There are N buckets.\n`bucket_counts[0]` is the number of samples in the underflow bucket.\n`bucket_counts[1]` to `bucket_counts[N-1]` are the numbers of samples\nin each of the finite buckets. And `bucket_counts[N] is the number\nof samples in the overflow bucket. See the comments of `bucket_option`\nbelow for more details.\n\nAny suffix of trailing zeros may be omitted.",
          "items": {
            "format": "int64",
            "type": "string"
          },
          "type": "array"
        },
        "count": {
          "description": "The total number of samples in the distribution. Must be \u003e= 0.",
          "format": "int64",
          "type": "string"
        },
        "exemplars": {
          "description": "Example points. Must be in increasing order of `value` field.",
          "items": {
            "$ref": "Exemplar"
          },
          "type": "array"
        },
        "explicitBuckets": {
          "$ref": "ExplicitBuckets",
          "description": "Buckets with arbitrary user-provided width."
        },
        "exponentialBuckets": {
          "$ref": "ExponentialBuckets",
          "description": "Buckets with exponentially growing width."
        },
        "linearBuckets": {
          "$ref": "LinearBuckets",
          "description": "Buckets with constant width."
        },
        "maximum": {
          "description": "The maximum of the population of values. Ignored if `count` is zero.",
          "format": "double",
          "type": "number"
        },
        "mean": {
          "description": "The arithmetic mean of the samples in the distribution. If `count` is\nzero then this field must be zero.",
          "format": "double",
          "type": "number"
        },
        "minimum": {
          "description": "The minimum of the population of values. Ignored if `count` is zero.",
          "format": "double",
          "type": "number"
        },
        "sumOfSquaredDeviation": {
          "description": "The sum of squared deviations from the mean:\n  Sum[i=1..count]((x_i - mean)^2)\nwhere each x_i is a sample values. If `count` is zero then this field\nmust be zero, otherwise validation of the request fails.",
          "format": "double",
          "type": "number"
        }
      },
      "type": "object"
    },
    "Exemplar": {
      "description": "Exemplars are example points that may be used to annotate aggregated\ndistribution values. They are metadata that gives information about a\nparticular value added to a Distribution bucket, such as a trace ID that\nwas active when a value was added. They may contain further information,\nsuch as a example values and timestamps, origin, etc.",
      "id": "Exemplar",
      "properties": {
        "attachments": {
          "description": "Contextual information about the example value. Examples are:\n\n  Trace: type.googleapis.com/google.monitoring.v3.SpanContext\n\n  Literal string: type.googleapis.com/google.protobuf.StringValue\n\n  Labels dropped during aggregation:\n    type.googleapis.com/google.monitoring.v3.DroppedLabels\n\nThere may be only a single attachment of any given message type in a\nsingle exemplar, and this is enforced by the system.",
          "items": {
            "additionalProperties": {
              "description": "Properties of the object. Contains field @type with type URL.",
              "type": "any"
            },
            "type": "object"
          },
          "type": "array"
        },
        "timestamp": {
          "description": "The observation (sampling) time of the above value.",
          "format": "google-datetime",
          "type": "string"
        },
        "value": {
          "description": "Value of the exemplar point. This value determines to which bucket the\nexemplar belongs.",
          "format": "double",
          "type": "number"
        }
      },
      "type": "object"
    },
    "ExplicitBuckets": {
      "description": "Describing buckets with arbitrary user-provided width.",
      "id": "ExplicitBuckets",
      "properties": {
        "bounds": {
          "description": "'bound' is a list of strictly increasing boundaries between\nbuckets. Note that a list of length N-1 defines N buckets because\nof fenceposting. See comments on `bucket_options` for details.\n\nThe i'th finite bucket covers the interval\n  [bound[i-1], bound[i])\nwhere i ranges from 1 to bound_size() - 1. Note that there are no\nfinite buckets at all if 'bound' only contains a single element; in\nthat special case the single bound defines the boundary between the\nunderflow and overflow buckets.\n\nbucket number                   lower bound    upper bound\n i == 0 (underflow)              -inf           bound[i]\n 0 \u003c i \u003c bound_size()            bound[i-1]     bound[i]\n i == bound_size() (overflow)    bound[i-1]     +inf",
          "items": {
            "format": "double",
            "type": "number"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ExponentialBuckets": {
      "description": "Describing buckets with exponentially growing width.",
      "id": "ExponentialBuckets",
      "properties": {
        "growthFactor": {
          "description": "The i'th exponential bucket covers the interval\n  [scale * growth_factor^(i-1), scale * growth_factor^i)\nwhere i ranges from 1 to num_finite_buckets inclusive.\nMust be larger than 1.0.",
          "format": "double",
          "type": "number"
        },
        "numFiniteBuckets": {
          "description": "The number of finite buckets. With the underflow and overflow buckets,\nthe total number of buckets is `num_finite_buckets` + 2.\nSee comments on `bucket_options` for details.",
          "format": "int32",
          "type": "integer"
        },
        "scale": {
          "description": "The i'th exponential bucket covers the interval\n  [scale * growth_factor^(i-1), scale * growth_factor^i)\nwhere i ranges from 1 to num_finite_buckets inclusive.\nMust be \u003e 0.",
          "format": "double",
          "type": "number"
        }
      },
      "type": "object"
    },
    "FirstPartyPrincipal": {
      "description": "First party identity principal.",
      "id": "FirstPartyPrincipal",
      "properties": {
        "principalEmail": {
          "description": "The email address of a Google account.\n.",
          "type": "string"
        },
        "serviceMetadata": {
          "additionalProperties": {
            "description": "Properties of the object.",
            "type": "any"
          },
          "description": "Metadata about the service that uses the service account.\n.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "HttpRequest": {
      "description": "A common proto for logging HTTP requests. Only contains semantics\ndefined by the HTTP specification. Product-specific logging\ninformation MUST be defined in a separate message.",
      "id": "HttpRequest",
      "properties": {
        "cacheFillBytes": {
          "description": "The number of HTTP response bytes inserted into cache. Set only when a\ncache fill was attempted.",
          "format": "int64",
          "type": "string"
        },
        "cacheHit": {
          "description": "Whether or not an entity was served from cache\n(with or without validation).",
          "type": "boolean"
        },
        "cacheLookup": {
          "description": "Whether or not a cache lookup was attempted.",
          "type": "boolean"
        },
        "cacheValidatedWithOriginServer": {
          "description": "Whether or not the response was validated with the origin server before\nbeing served from cache. This field is only meaningful if `cache_hit` is\nTrue.",
          "type": "boolean"
        },
        "latency": {
          "description": "The request processing latency on the server, from the time the request was\nreceived until the response was sent.",
          "format": "google-duration",
          "type": "string"
        },
        "protocol": {
          "description": "Protocol used for the request. Examples: \"HTTP/1.1\", \"HTTP/2\", \"websocket\"",
          "type": "string"
        },
        "referer": {
          "description": "The referer URL of the request, as defined in\n[HTTP/1.1 Header Field\nDefinitions](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html).",
          "type": "string"
        },
        "remoteIp": {
          "description": "The IP address (IPv4 or IPv6) of the client that issued the HTTP\nrequest. Examples: `\"192.168.1.1\"`, `\"FE80::0202:B3FF:FE1E:8329\"`.",
          "type": "string"
        },
        "requestMethod": {
          "description": "The request method. Examples: `\"GET\"`, `\"HEAD\"`, `\"PUT\"`, `\"POST\"`.",
          "type": "string"
        },
        "requestSize": {
          "description": "The size of the HTTP request message in bytes, including the request\nheaders and the request body.",
          "format": "int64",
          "type": "string"
        },
        "requestUrl": {
          "description": "The scheme (http, https), the host name, the path, and the query\nportion of the URL that was requested.\nExample: `\"http://example.com/some/info?color=red\"`.",
          "type": "string"
        },
        "responseSize": {
          "description": "The size of the HTTP response message sent back to the client, in bytes,\nincluding the response headers and the response body.",
          "format": "int64",
          "type": "string"
        },
        "serverIp": {
          "description": "The IP address (IPv4 or IPv6) of the origin server that the request was\nsent to.",
          "type": "string"
        },
        "status": {
          "description": "The response code indicating the status of the response.\nExamples: 200, 404.",
          "format": "int32",
          "type": "integer"
        },
        "userAgent": {
          "description": "The user agent sent by the client. Example:\n`\"Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Q312461; .NET\nCLR 1.0.3705)\"`.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "LinearBuckets": {
      "description": "Describing buckets with constant width.",
      "id": "LinearBuckets",
      "properties": {
        "numFiniteBuckets": {
          "description": "The number of finite buckets. With the underflow and overflow buckets,\nthe total number of buckets is `num_finite_buckets` + 2.\nSee comments on `bucket_options` for details.",
          "format": "int32",
          "type": "integer"
        },
        "offset": {
          "description": "The i'th linear bucket covers the interval\n  [offset + (i-1) * width, offset + i * width)\nwhere i ranges from 1 to num_finite_buckets, inclusive.",
          "format": "double",
          "type": "number"
        },
        "width": {
          "description": "The i'th linear bucket covers the interval\n  [offset + (i-1) * width, offset + i * width)\nwhere i ranges from 1 to num_finite_buckets, inclusive.\nMust be strictly positive.",
          "format": "double",
          "type": "number"
        }
      },
      "type": "object"
    },
    "LogEntry": {
      "description": "An individual log entry.",
      "id": "LogEntry",
      "properties": {
        "httpRequest": {
          "$ref": "HttpRequest",
          "description": "Optional. Information about the HTTP request associated with this\nlog entry, if applicable."
        },
        "insertId": {
          "description": "A unique ID for the log entry used for deduplication. If omitted,\nthe implementation will generate one based on operation_id.",
          "type": "string"
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "A set of user-defined (key, value) data that provides additional\ninformation about the log entry.",
          "type": "object"
        },
        "name": {
          "description": "Required. The log to which this log entry belongs. Examples: `\"syslog\"`,\n`\"book_log\"`.",
          "type": "string"
        },
        "operation": {
          "$ref": "LogEntryOperation",
          "description": "Optional. Information about an operation associated with the log entry, if\napplicable."
        },
        "protoPayload": {
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "description": "The log entry payload, represented as a protocol buffer that is\nexpressed as a JSON object. The only accepted type currently is\nAuditLog.",
          "type": "object"
        },
        "severity": {
          "description": "The severity of the log entry. The default value is\n`LogSeverity.DEFAULT`.",
          "enum": [
            "DEFAULT",
            "DEBUG",
            "INFO",
            "NOTICE",
            "WARNING",
            "ERROR",
            "CRITICAL",
            "ALERT",
            "EMERGENCY"
          ],
          "enumDescriptions": [
            "(0) The log entry has no assigned severity level.",
            "(100) Debug or trace information.",
            "(200) Routine information, such as ongoing status or performance.",
            "(300) Normal but significant events, such as start up, shut down, or\na configuration change.",
            "(400) Warning events might cause problems.",
            "(500) Error events are likely to cause problems.",
            "(600) Critical events cause more severe problems or outages.",
            "(700) A person must take an action immediately.",
            "(800) One or more systems are unusable."
          ],
          "type": "string"
        },
        "sourceLocation": {
          "$ref": "LogEntrySourceLocation",
          "description": "Optional. Source code location information associated with the log entry,\nif any."
        },
        "structPayload": {
          "additionalProperties": {
            "description": "Properties of the object.",
            "type": "any"
          },
          "description": "The log entry payload, represented as a structure that\nis expressed as a JSON object.",
          "type": "object"
        },
        "textPayload": {
          "description": "The log entry payload, represented as a Unicode string (UTF-8).",
          "type": "string"
        },
        "timestamp": {
          "description": "The time the event described by the log entry occurred. If\nomitted, defaults to operation start time.",
          "format": "google-datetime",
          "type": "string"
        },
        "trace": {
          "description": "Optional. Resource name of the trace associated with the log entry, if any.\nIf this field contains a relative resource name, you can assume the name is\nrelative to `//tracing.googleapis.com`. Example:\n`projects/my-projectid/traces/06796866738c859f2f19b7cfb3214824`",
          "type": "string"
        }
      },
      "type": "object"
    },
    "LogEntryOperation": {
      "description": "Additional information about a potentially long-running operation with which\na log entry is associated.",
      "id": "LogEntryOperation",
      "properties": {
        "first": {
          "description": "Optional. Set this to True if this is the first log entry in the operation.",
          "type": "boolean"
        },
        "id": {
          "description": "Optional. An arbitrary operation identifier. Log entries with the\nsame identifier are assumed to be part of the same operation.",
          "type": "string"
        },
        "last": {
          "description": "Optional. Set this to True if this is the last log entry in the operation.",
          "type": "boolean"
        },
        "producer": {
          "description": "Optional. An arbitrary producer identifier. The combination of\n`id` and `producer` must be globally unique.  Examples for `producer`:\n`\"MyDivision.MyBigCompany.com\"`, `\"github.com/MyProject/MyApplication\"`.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "LogEntrySourceLocation": {
      "description": "Additional information about the source code location that produced the log\nentry.",
      "id": "LogEntrySourceLocation",
      "properties": {
        "file": {
          "description": "Optional. Source file name. Depending on the runtime environment, this\nmight be a simple name or a fully-qualified name.",
          "type": "string"
        },
        "function": {
          "description": "Optional. Human-readable name of the function or method being invoked, with\noptional context such as the class or package name. This information may be\nused in contexts such as the logs viewer, where a file and line number are\nless meaningful. The format can vary by language. For example:\n`qual.if.ied.Class.method` (Java), `dir/package.func` (Go), `function`\n(Python).",
          "type": "string"
        },
        "line": {
          "description": "Optional. Line within the source file. 1-based; 0 indicates no line number\navailable.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "MetricValue": {
      "description": "Represents a single metric value.",
      "id": "MetricValue",
      "properties": {
        "boolValue": {
          "description": "A boolean value.",
          "type": "boolean"
        },
        "distributionValue": {
          "$ref": "Distribution",
          "description": "A distribution value."
        },
        "doubleValue": {
          "description": "A double precision floating point value.",
          "format": "double",
          "type": "number"
        },
        "endTime": {
          "description": "The end of the time period over which this metric value's measurement\napplies.",
          "format": "google-datetime",
          "type": "string"
        },
        "int64Value": {
          "description": "A signed 64-bit integer value.",
          "format": "int64",
          "type": "string"
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "The labels describing the metric value.\nSee comments on google.api.servicecontrol.v1.Operation.labels for\nthe overriding relationship.\nNote that this map must not contain monitored resource labels.",
          "type": "object"
        },
        "moneyValue": {
          "$ref": "Money",
          "description": "A money value."
        },
        "startTime": {
          "description": "The start of the time period over which this metric value's measurement\napplies. The time period has different semantics for different metric\ntypes (cumulative, delta, and gauge). See the metric definition\ndocumentation in the service configuration for details.",
          "format": "google-datetime",
          "type": "string"
        },
        "stringValue": {
          "description": "A text string value.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "MetricValueSet": {
      "description": "Represents a set of metric values in the same metric.\nEach metric value in the set should have a unique combination of start time,\nend time, and label values.",
      "id": "MetricValueSet",
      "properties": {
        "metricName": {
          "description": "The metric name defined in the service configuration.",
          "type": "string"
        },
        "metricValues": {
          "description": "The values in this metric.",
          "items": {
            "$ref": "MetricValue"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "Money": {
      "description": "Represents an amount of money with its currency type.",
      "id": "Money",
      "properties": {
        "currencyCode": {
          "description": "The 3-letter currency code defined in ISO 4217.",
          "type": "string"
        },
        "nanos": {
          "description": "Number of nano (10^-9) units of the amount.\nThe value must be between -999,999,999 and +999,999,999 inclusive.\nIf `units` is positive, `nanos` must be positive or zero.\nIf `units` is zero, `nanos` can be positive, zero, or negative.\nIf `units` is negative, `nanos` must be negative or zero.\nFor example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.",
          "format": "int32",
          "type": "integer"
        },
        "units": {
          "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Operation": {
      "description": "Represents information regarding an operation.",
      "id": "Operation",
      "properties": {
        "consumerId": {
          "description": "Identity of the consumer who is using the service.\nThis field should be filled in for the operations initiated by a\nconsumer, but not for service-initiated operations that are\nnot related to a specific consumer.\n\n- This can be in one of the following formats:\n    - project:PROJECT_ID,\n    - project`_`number:PROJECT_NUMBER,\n    - projects/PROJECT_ID or PROJECT_NUMBER,\n    - folders/FOLDER_NUMBER,\n    - organizations/ORGANIZATION_NUMBER,\n    - api`_`key:API_KEY.",
          "type": "string"
        },
        "endTime": {
          "description": "End time of the operation.\nRequired when the operation is used in ServiceController.Report,\nbut optional when the operation is used in ServiceController.Check.",
          "format": "google-datetime",
          "type": "string"
        },
        "importance": {
          "description": "DO NOT USE. This is an experimental field.",
          "enum": [
            "LOW",
            "HIGH",
            "DEBUG"
          ],
          "enumDescriptions": [
            "The API implementation may cache and aggregate the data.\nThe data may be lost when rare and unexpected system failures occur.",
            "The API implementation doesn't cache and aggregate the data.\nIf the method returns successfully, it's guaranteed that the data has\nbeen persisted in durable storage.",
            "In addition to the behavior described in HIGH, DEBUG enables\nadditional validation logic that is only useful during the onboarding\nprocess. This is only available to Google internal services and\nthe service must be whitelisted by chemist-dev@google.com in order\nto use this level."
          ],
          "type": "string"
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Labels describing the operation. Only the following labels are allowed:\n\n- Labels describing monitored resources as defined in\n  the service configuration.\n- Default labels of metric values. When specified, labels defined in the\n  metric value override these default.\n- The following labels defined by Google Cloud Platform:\n    - `cloud.googleapis.com/location` describing the location where the\n       operation happened,\n    - `servicecontrol.googleapis.com/user_agent` describing the user agent\n       of the API request,\n    - `servicecontrol.googleapis.com/service_agent` describing the service\n       used to handle the API request (e.g. ESP),\n    - `servicecontrol.googleapis.com/platform` describing the platform\n       where the API is served, such as App Engine, Compute Engine, or\n       Kubernetes Engine.",
          "type": "object"
        },
        "logEntries": {
          "description": "Represents information to be logged.",
          "items": {
            "$ref": "LogEntry"
          },
          "type": "array"
        },
        "metricValueSets": {
          "description": "Represents information about this operation. Each MetricValueSet\ncorresponds to a metric defined in the service configuration.\nThe data type used in the MetricValueSet must agree with\nthe data type specified in the metric definition.\n\nWithin a single operation, it is not allowed to have more than one\nMetricValue instances that have the same metric names and identical\nlabel value combinations. If a request has such duplicated MetricValue\ninstances, the entire request is rejected with\nan invalid argument error.",
          "items": {
            "$ref": "MetricValueSet"
          },
          "type": "array"
        },
        "operationId": {
          "description": "Identity of the operation. This must be unique within the scope of the\nservice that generated the operation. If the service calls\nCheck() and Report() on the same operation, the two calls should carry\nthe same id.\n\nUUID version 4 is recommended, though not required.\nIn scenarios where an operation is computed from existing information\nand an idempotent id is desirable for deduplication purpose, UUID version 5\nis recommended. See RFC 4122 for details.",
          "type": "string"
        },
        "operationName": {
          "description": "Fully qualified name of the operation. Reserved for future use.",
          "type": "string"
        },
        "quotaProperties": {
          "$ref": "QuotaProperties",
          "description": "Represents the properties needed for quota check. Applicable only if this\noperation is for a quota check request. If this is not specified, no quota\ncheck will be performed."
        },
        "resources": {
          "description": "The resources that are involved in the operation.\nThe maximum supported number of entries in this field is 100.",
          "items": {
            "$ref": "ResourceInfo"
          },
          "type": "array"
        },
        "startTime": {
          "description": "Required. Start time of the operation.",
          "format": "google-datetime",
          "type": "string"
        },
        "userLabels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "User defined labels for the resource that this operation is associated\nwith. Only a combination of 1000 user labels per consumer project are\nallowed.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "Peer": {
      "description": "This message defines attributes for a node that handles a network request.\nThe node can be either a service or an application that sends, forwards,\nor receives the request. Service peers should fill in\n`principal` and `labels` as appropriate.",
      "id": "Peer",
      "properties": {
        "ip": {
          "description": "The IP address of the peer.",
          "type": "string"
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "The labels associated with the peer.",
          "type": "object"
        },
        "port": {
          "description": "The network port of the peer.",
          "format": "int64",
          "type": "string"
        },
        "principal": {
          "description": "The identity of this peer. Similar to `Request.auth.principal`, but\nrelative to the peer instead of the request. For example, the\nidenity associated with a load balancer that forwared the request.",
          "type": "string"
        },
        "regionCode": {
          "description": "The CLDR country/region code associated with the above IP address.\nIf the IP address is private, the `region_code` should reflect the\nphysical location where this peer is running.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "QuotaError": {
      "description": "Represents error information for QuotaOperation.",
      "id": "QuotaError",
      "properties": {
        "code": {
          "description": "Error code.",
          "enum": [
            "UNSPECIFIED",
            "RESOURCE_EXHAUSTED",
            "OUT_OF_RANGE",
            "BILLING_NOT_ACTIVE",
            "PROJECT_DELETED",
            "API_KEY_INVALID",
            "API_KEY_EXPIRED",
            "SPATULA_HEADER_INVALID",
            "LOAS_ROLE_INVALID",
            "NO_LOAS_PROJECT",
            "PROJECT_STATUS_UNAVAILABLE",
            "SERVICE_STATUS_UNAVAILABLE",
            "BILLING_STATUS_UNAVAILABLE",
            "QUOTA_SYSTEM_UNAVAILABLE"
          ],
          "enumDescriptions": [
            "This is never used.",
            "Quota allocation failed.\nSame as google.rpc.Code.RESOURCE_EXHAUSTED.",
            "Quota release failed.  This error is ONLY returned on a NORMAL release.\nMore formally:  if a user requests a release of 10 tokens, but only\n5 tokens were previously allocated, in a BEST_EFFORT release, this will\nbe considered a success, 5 tokens will be released, and the result will\nbe \"Ok\".  If this is done in NORMAL mode, no tokens will be released,\nand an OUT_OF_RANGE error will be returned.\nSame as google.rpc.Code.OUT_OF_RANGE.",
            "Consumer cannot access the service because the service requires active\nbilling.",
            "Consumer's project has been marked as deleted (soft deletion).",
            "Specified API key is invalid.",
            "Specified API Key has expired.",
            "Consumer's spatula header is invalid.",
            "The consumer's LOAS role is invalid.",
            "The consumer's LOAS role has no associated project.",
            "The backend server for looking up project id/number is unavailable.",
            "The backend server for checking service status is unavailable.",
            "The backend server for checking billing status is unavailable.",
            "The backend server for checking quota limits is unavailable."
          ],
          "type": "string"
        },
        "description": {
          "description": "Free-form text that provides details on the cause of the error.",
          "type": "string"
        },
        "subject": {
          "description": "Subject to whom this error applies. See the specific enum for more details\non this field. For example, \"clientip:\u003cip address of client\u003e\" or\n\"project:\u003cGoogle developer project id\u003e\".",
          "type": "string"
        }
      },
      "type": "object"
    },
    "QuotaInfo": {
      "description": "Contains the quota information for a quota check response.",
      "id": "QuotaInfo",
      "properties": {
        "limitExceeded": {
          "description": "Quota Metrics that have exceeded quota limits.\nFor QuotaGroup-based quota, this is QuotaGroup.name\nFor QuotaLimit-based quota, this is QuotaLimit.name\nSee: google.api.Quota\nDeprecated: Use quota_metrics to get per quota group limit exceeded status.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "quotaConsumed": {
          "additionalProperties": {
            "format": "int32",
            "type": "integer"
          },
          "description": "Map of quota group name to the actual number of tokens consumed. If the\nquota check was not successful, then this will not be populated due to no\nquota consumption.\n\nWe are not merging this field with 'quota_metrics' field because of the\ncomplexity of scaling in Chemist client code base. For simplicity, we will\nkeep this field for Castor (that scales quota usage) and 'quota_metrics'\nfor SuperQuota (that doesn't scale quota usage).\n",
          "type": "object"
        },
        "quotaMetrics": {
          "description": "Quota metrics to indicate the usage. Depending on the check request, one or\nmore of the following metrics will be included:\n\n1. For rate quota, per quota group or per quota metric incremental usage\nwill be specified using the following delta metric:\n  \"serviceruntime.googleapis.com/api/consumer/quota_used_count\"\n\n2. For allocation quota, per quota metric total usage will be specified\nusing the following gauge metric:\n  \"serviceruntime.googleapis.com/allocation/consumer/quota_used_count\"\n\n3. For both rate quota and allocation quota, the quota limit reached\ncondition will be specified using the following boolean metric:\n  \"serviceruntime.googleapis.com/quota/exceeded\"",
          "items": {
            "$ref": "MetricValueSet"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "QuotaOperation": {
      "description": "Represents information regarding a quota operation.",
      "id": "QuotaOperation",
      "properties": {
        "consumerId": {
          "description": "Identity of the consumer for whom this quota operation is being performed.\n\nThis can be in one of the following formats:\n  project:\u003cproject_id\u003e,\n  project_number:\u003cproject_number\u003e,\n  api_key:\u003capi_key\u003e.",
          "type": "string"
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Labels describing the operation.",
          "type": "object"
        },
        "methodName": {
          "description": "Fully qualified name of the API method for which this quota operation is\nrequested. This name is used for matching quota rules or metric rules and\nbilling status rules defined in service configuration.\n\nThis field should not be set if any of the following is true:\n(1) the quota operation is performed on non-API resources.\n(2) quota_metrics is set because the caller is doing quota override.\n\nExample of an RPC method name:\n    google.example.library.v1.LibraryService.CreateShelf",
          "type": "string"
        },
        "operationId": {
          "description": "Identity of the operation. This is expected to be unique within the scope\nof the service that generated the operation, and guarantees idempotency in\ncase of retries.\n\nIn order to ensure best performance and latency in the Quota backends,\noperation_ids are optimally associated with time, so that related\noperations can be accessed fast in storage. For this reason, the\nrecommended token for services that intend to operate at a high QPS is\nUnix time in nanos + UUID",
          "type": "string"
        },
        "quotaMetrics": {
          "description": "Represents information about this operation. Each MetricValueSet\ncorresponds to a metric defined in the service configuration.\nThe data type used in the MetricValueSet must agree with\nthe data type specified in the metric definition.\n\nWithin a single operation, it is not allowed to have more than one\nMetricValue instances that have the same metric names and identical\nlabel value combinations. If a request has such duplicated MetricValue\ninstances, the entire request is rejected with\nan invalid argument error.\n\nThis field is mutually exclusive with method_name.",
          "items": {
            "$ref": "MetricValueSet"
          },
          "type": "array"
        },
        "quotaMode": {
          "description": "Quota mode for this operation.",
          "enum": [
            "UNSPECIFIED",
            "NORMAL",
            "BEST_EFFORT",
            "CHECK_ONLY"
          ],
          "enumDescriptions": [
            "Guard against implicit default. Must not be used.",
            "For AllocateQuota request, allocates quota for the amount specified in\nthe service configuration or specified using the quota metrics. If the\namount is higher than the available quota, allocation error will be\nreturned and no quota will be allocated.\nIf multiple quotas are part of the request, and one fails, none of the\nquotas are allocated or released.",
            "The operation allocates quota for the amount specified in the service\nconfiguration or specified using the quota metrics. If the amount is\nhigher than the available quota, request does not fail but all available\nquota will be allocated.\nFor rate quota, BEST_EFFORT will continue to deduct from other groups\neven if one does not have enough quota. For allocation, it will find the\nminimum available amount across all groups and deduct that amount from\nall the affected groups.",
            "For AllocateQuota request, only checks if there is enough quota\navailable and does not change the available quota. No lock is placed on\nthe available quota either."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "QuotaProperties": {
      "description": "Represents the properties needed for quota operations.",
      "id": "QuotaProperties",
      "properties": {
        "quotaMode": {
          "description": "Quota mode for this operation.",
          "enum": [
            "ACQUIRE",
            "ACQUIRE_BEST_EFFORT",
            "CHECK",
            "RELEASE"
          ],
          "enumDescriptions": [
            "Decreases available quota by the cost specified for the operation.\nIf cost is higher than available quota, operation fails and returns\nerror.",
            "Decreases available quota by the cost specified for the operation.\nIf cost is higher than available quota, operation does not fail and\navailable quota goes down to zero but it returns error.",
            "Does not change any available quota. Only checks if there is enough\nquota.\nNo lock is placed on the checked tokens neither.",
            "Increases available quota by the operation cost specified for the\noperation."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "ReportError": {
      "description": "Represents the processing error of one Operation in the request.",
      "id": "ReportError",
      "properties": {
        "operationId": {
          "description": "The Operation.operation_id value from the request.",
          "type": "string"
        },
        "status": {
          "$ref": "Status",
          "description": "Details of the error when processing the Operation."
        }
      },
      "type": "object"
    },
    "ReportInfo": {
      "description": "Contains additional info about the report operation.",
      "id": "ReportInfo",
      "properties": {
        "operationId": {
          "description": "The Operation.operation_id value from the request.",
          "type": "string"
        },
        "quotaInfo": {
          "$ref": "QuotaInfo",
          "description": "Quota usage info when processing the `Operation`."
        }
      },
      "type": "object"
    },
    "ReportRequest": {
      "description": "Request message for the Report method.",
      "id": "ReportRequest",
      "properties": {
        "operations": {
          "description": "Operations to be reported.\n\nTypically the service should report one operation per request.\nPutting multiple operations into a single request is allowed, but should\nbe used only when multiple operations are natually available at the time\nof the report.\n\nThere is no limit on the number of operations in the same ReportRequest,\nhowever the ReportRequest size should be no larger than 1MB. See\nReportResponse.report_errors for partial failure behavior.",
          "items": {
            "$ref": "Operation"
          },
          "type": "array"
        },
        "serviceConfigId": {
          "description": "Specifies which version of service config should be used to process the\nrequest.\n\nIf unspecified or no matching version can be found, the\nlatest one will be used.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ReportResponse": {
      "description": "Response message for the Report method.",
      "id": "ReportResponse",
      "properties": {
        "reportErrors": {
          "description": "Partial failures, one for each `Operation` in the request that failed\nprocessing. There are three possible combinations of the RPC status:\n\n1. The combination of a successful RPC status and an empty `report_errors`\n   list indicates a complete success where all `Operations` in the\n   request are processed successfully.\n2. The combination of a successful RPC status and a non-empty\n   `report_errors` list indicates a partial success where some\n   `Operations` in the request succeeded. Each\n   `Operation` that failed processing has a corresponding item\n   in this list.\n3. A failed RPC status indicates a general non-deterministic failure.\n   When this happens, it's impossible to know which of the\n   'Operations' in the request succeeded or failed.",
          "items": {
            "$ref": "ReportError"
          },
          "type": "array"
        },
        "reportInfos": {
          "description": "Quota usage for each quota release `Operation` request.\n\nFully or partially failed quota release request may or may not be present\nin `report_quota_info`. For example, a failed quota release request will\nhave the current quota usage info when precise quota library returns the\ninfo. A deadline exceeded quota request will not have quota usage info.\n\nIf there is no quota release request, report_quota_info will be empty.\n",
          "items": {
            "$ref": "ReportInfo"
          },
          "type": "array"
        },
        "serviceConfigId": {
          "description": "The actual config id used to process the request.",
          "type": "string"
        },
        "serviceRolloutId": {
          "description": "Unimplemented. The current service rollout id used to process the request.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Request": {
      "description": "This message defines attributes for an HTTP request. If the actual\nrequest is not an HTTP request, the runtime system should try to map\nthe actual request to an equivalent HTTP request.",
      "id": "Request",
      "properties": {
        "auth": {
          "$ref": "Auth",
          "description": "The request authentication. May be absent for unauthenticated requests.\nDerived from the HTTP request `Authorization` header or equivalent."
        },
        "headers": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "The HTTP request headers. If multiple headers share the same key, they\nmust be merged according to the HTTP spec. All header keys must be\nlowercased, because HTTP header keys are case-insensitive.",
          "type": "object"
        },
        "host": {
          "description": "The HTTP request `Host` header value.",
          "type": "string"
        },
        "id": {
          "description": "The unique ID for a request, which can be propagated to downstream\nsystems. The ID should have low probability of collision\nwithin a single day for a specific service.",
          "type": "string"
        },
        "method": {
          "description": "The HTTP request method, such as `GET`, `POST`.",
          "type": "string"
        },
        "path": {
          "description": "The HTTP URL path.",
          "type": "string"
        },
        "protocol": {
          "description": "The network protocol used with the request, such as \"http/1.1\",\n\"spdy/3\", \"h2\", \"h2c\", \"webrtc\", \"tcp\", \"udp\", \"quic\". See\nhttps://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids\nfor details.",
          "type": "string"
        },
        "query": {
          "description": "The HTTP URL query in the format of `name1=value1\u0026name2=value2`, as it\nappears in the first line of the HTTP request. No decoding is performed.",
          "type": "string"
        },
        "reason": {
          "description": "A special parameter for request reason. It is used by security systems\nto associate auditing information with a request.",
          "type": "string"
        },
        "scheme": {
          "description": "The HTTP URL scheme, such as `http` and `https`.",
          "type": "string"
        },
        "size": {
          "description": "The HTTP request size in bytes. If unknown, it must be -1.",
          "format": "int64",
          "type": "string"
        },
        "time": {
          "description": "The timestamp when the `destination` service receives the first byte of\nthe request.",
          "format": "google-datetime",
          "type": "string"
        }
      },
      "type": "object"
    },
    "RequestMetadata": {
      "description": "Metadata about the request.",
      "id": "RequestMetadata",
      "properties": {
        "callerIp": {
          "description": "The IP address of the caller.\nFor caller from internet, this will be public IPv4 or IPv6 address.\nFor caller from a Compute Engine VM with external IP address, this\nwill be the VM's external IP address. For caller from a Compute\nEngine VM without external IP address, if the VM is in the same\norganization (or project) as the accessed resource, `caller_ip` will\nbe the VM's internal IPv4 address, otherwise the `caller_ip` will be\nredacted to \"gce-internal-ip\".\nSee https://cloud.google.com/compute/docs/vpc/ for more information.",
          "type": "string"
        },
        "callerNetwork": {
          "description": "The network of the caller.\nSet only if the network host project is part of the same GCP organization\n(or project) as the accessed resource.\nSee https://cloud.google.com/compute/docs/vpc/ for more information.\nThis is a scheme-less URI full resource name. For example:\n\n    \"//compute.googleapis.com/projects/PROJECT_ID/global/networks/NETWORK_ID\"",
          "type": "string"
        },
        "callerSuppliedUserAgent": {
          "description": "The user agent of the caller.\nThis information is not authenticated and should be treated accordingly.\nFor example:\n\n+   `google-api-python-client/1.4.0`:\n    The request was made by the Google API client for Python.\n+   `Cloud SDK Command Line Tool apitools-client/1.0 gcloud/0.9.62`:\n    The request was made by the Google Cloud SDK CLI (gcloud).\n+   `AppEngine-Google; (+http://code.google.com/appengine; appid:\ns~my-project`:\n    The request was made from the `my-project` App Engine app.\nNOLINT",
          "type": "string"
        },
        "destinationAttributes": {
          "$ref": "Peer",
          "description": "The destination of a network activity, such as accepting a TCP connection.\nIn a multi hop network activity, the destination represents the receiver of\nthe last hop. Only two fields are used in this message, Peer.port and\nPeer.ip. These fields are optionally populated by those services utilizing\nthe IAM condition feature."
        },
        "requestAttributes": {
          "$ref": "Request",
          "description": "Request attributes used in IAM condition evaluation. This field contains\nrequest attributes like request time and access levels associated with\nthe request.\n\n\nTo get the whole view of the attributes used in IAM\ncondition evaluation, the user must also look into\n`AuditLog.authentication_info.resource_attributes`."
        }
      },
      "type": "object"
    },
    "Resource": {
      "description": "This message defines core attributes for a resource. A resource is an\naddressable (named) entity provided by the destination service. For\nexample, a file stored on a network storage service.",
      "id": "Resource",
      "properties": {
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "The labels or tags on the resource, such as AWS resource tags and\nKubernetes resource labels.",
          "type": "object"
        },
        "name": {
          "description": "The stable identifier (name) of a resource on the `service`. A resource\ncan be logically identified as \"//{resource.service}/{resource.name}\".\nThe differences between a resource name and a URI are:\n\n*   Resource name is a logical identifier, independent of network\n    protocol and API version. For example,\n    `//pubsub.googleapis.com/projects/123/topics/news-feed`.\n*   URI often includes protocol and version information, so it can\n    be used directly by applications. For example,\n    `https://pubsub.googleapis.com/v1/projects/123/topics/news-feed`.\n\nSee https://cloud.google.com/apis/design/resource_names for details.",
          "type": "string"
        },
        "service": {
          "description": "The name of the service that this resource belongs to, such as\n`pubsub.googleapis.com`. The service may be different from the DNS\nhostname that actually serves the request.",
          "type": "string"
        },
        "type": {
          "description": "The type of the resource. The syntax is platform-specific because\ndifferent platforms define their resources differently.\n\nFor Google APIs, the type format must be \"{service}/{kind}\".",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ResourceInfo": {
      "description": "Describes a resource associated with this operation.",
      "id": "ResourceInfo",
      "properties": {
        "resourceContainer": {
          "description": "The identifier of the parent of this resource instance.\nMust be in one of the following formats:\n    - “projects/\u003cproject-id or project-number\u003e”\n    - “folders/\u003cfolder-id\u003e”\n    - “organizations/\u003corganization-id\u003e”",
          "type": "string"
        },
        "resourceLocation": {
          "description": "The location of the resource. If not empty, the resource will be checked\nagainst location policy. The value must be a valid zone, region or\nmultiregion. For example: \"europe-west4\" or \"northamerica-northeast1-a\"",
          "type": "string"
        },
        "resourceName": {
          "description": "Name of the resource. This is used for auditing purposes.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ResourceLocation": {
      "description": "Location information about a resource.",
      "id": "ResourceLocation",
      "properties": {
        "currentLocations": {
          "description": "The locations of a resource after the execution of the operation.\nRequests to create or delete a location based resource must populate\nthe 'current_locations' field and not the 'original_locations' field.\nFor example:\n\n    \"europe-west1-a\"\n    \"us-east1\"\n    \"nam3\"",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "originalLocations": {
          "description": "The locations of a resource prior to the execution of the operation.\nRequests that mutate the resource's location must populate both the\n'original_locations' as well as the 'current_locations' fields.\nFor example:\n\n    \"europe-west1-a\"\n    \"us-east1\"\n    \"nam3\"",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ServiceAccountDelegationInfo": {
      "description": "Identity delegation history of an authenticated service account.",
      "id": "ServiceAccountDelegationInfo",
      "properties": {
        "firstPartyPrincipal": {
          "$ref": "FirstPartyPrincipal",
          "description": "First party (Google) identity as the real authority."
        },
        "thirdPartyPrincipal": {
          "$ref": "ThirdPartyPrincipal",
          "description": "Third party identity as the real authority."
        }
      },
      "type": "object"
    },
    "Status": {
      "description": "The `Status` type defines a logical error model that is suitable for\ndifferent programming environments, including REST APIs and RPC APIs. It is\nused by [gRPC](https://github.com/grpc). Each `Status` message contains\nthree pieces of data: error code, error message, and error details.\n\nYou can find out more about this error model and how to work with it in the\n[API Design Guide](https://cloud.google.com/apis/design/errors).",
      "id": "Status",
      "properties": {
        "code": {
          "description": "The status code, which should be an enum value of google.rpc.Code.",
          "format": "int32",
          "type": "integer"
        },
        "details": {
          "description": "A list of messages that carry the error details.  There is a common set of\nmessage types for APIs to use.",
          "items": {
            "additionalProperties": {
              "description": "Properties of the object. Contains field @type with type URL.",
              "type": "any"
            },
            "type": "object"
          },
          "type": "array"
        },
        "message": {
          "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ThirdPartyPrincipal": {
      "description": "Third party identity principal.",
      "id": "ThirdPartyPrincipal",
      "properties": {
        "thirdPartyClaims": {
          "additionalProperties": {
            "description": "Properties of the object.",
            "type": "any"
          },
          "description": "Metadata about third party identity.",
          "type": "object"
        }
      },
      "type": "object"
    }
  },
  "servicePath": "",
  "title": "Service Control API",
  "version": "v1",
  "version_module": true
}